python猜单词游戏_python-猜单词小游戏及一些基础练习

程序很简单,最近爬虫写多了,换换口味。巩固一下基础,并不断的完善自己的代码风格,让代码更加规范。

同时我减少了注释,甚至根本没有加注释,因为,我觉得加注释只会让优雅的代码变得复杂。增加代码长度,而且以python语言的特性,读起来应该没有什么困难。就没加注释了,以后只会在非常重要的地方加注释,然后在函数声明后加说明文档。

给定一个单词列表,随机选一个单词,输入一个字母,如果再所选的字母中,就继续,且有次数限制。

选中的单词显示为单词长度个_,比如选中的是‘dog’。

效果如下:

da98966310d2?from=timeline&isappinstalled=0

image.png

import random

def pick_word(words):

return random.choice(words)

def factory(word, guess, s, list_word):

s[list_word.index(guess)] = guess

list_word[list_word.index(guess)] = '_'

def get_guess_word():

return input("Guess a letter?\ninput:")

def main(words):

word = pick_word(words)

time = TIME

list_word = list(word)

s = ['_' for i in word]

while True:

if list_word == ['_' for i in word]:

print('All right! word :{0}\nTime left:{1}!'.format(word, time))

break

if time < 0:

print('Time out!\n')

break

for x in s:

print(x, end=' ')

print('\ntime remaining:{0}!'.format(time))

guess = get_guess_word()

if guess in list_word:

print('right!\n')

time -= 1

factory(word, guess, s, list_word)

else:

print('wrong!\n')

time -= 1

WORDS = ['append','dog','cat','pig','forg','ant','hen']

TIME = 14

if __name__ == '__main__':

main(WORDS)

程序中值得注意的一点:

当单词中的字母重复时,比如,add这个单词,如何判断啊输入的d是第几个位置。

判断输入的数是否是偶数,如果是偶数输出True,奇数输出False。不用乘法、除法、取余。

def is_even(k):

return True if format(k, 'b')[-1] == '0' else False

if __name__ == '__main__':

k = 11

print(is_even(k))

利用位操作,利用format(obj, ‘b’)将输入的对象转换为二进制,如果是偶数,则它的二进制最后一位一定是0,如果是奇数,它的二进制,最后一位一定是1,所以可以用这个特点判断输入的数是否是偶数。

编写一个函数,输入参数n,输出1~n的平方和。

def func(n):

result = []

for i in range(1, n+1):

result.append(i**2)

return sum(result)

if __name__ == '__main__':

print(func(10))

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值