python猜数字游戏(Python猜数字游戏再来一局)

http://www.itjxue.com  2023-03-03 21:23  来源:未知  点击次数: 

python猜数游戏:在程序中预设一个随机数?

import random

num = random.randint(0, 100) #随机数

N = 0 #访问次数

while True:

N += 1

x = int(input())

if x == num:

print("猜中了,用了{}次".format(N))

break

if x num:

print("太大了")

else:

print("太小了")

学python的乐趣

最近因为被要求整改,一个月也没什么课上,总感觉大学里不能只学专业知识,不然到毕业也不好找工作,于是也有了自学python 的想法,前几天也是开启了自学之路,发现了这语言挺有意思的。

首先就是学习了一些基础语言,在学习过程中因为之前学校要求学C语言,导致很多语法不一样,差点没有转换过来,好几次都把两者给混淆了,还好有视频教学,不然自己光看书还是比较吃力的。

慢慢地发现python还是很简洁的一款语言,相关语法也是通俗易懂,没有C语言那样复杂还要什么加括号,运行起来也很流畅,在学习了三天之后,自己根据所学的知识想了一个小游戏,猜数字游戏,虽然简单,但是吧最近学的语法都给用上了,在运行的那一瞬间,心里也乐开了花,想想自己也能做游戏了,虽然是比较低级的游戏,但也算一种自我鼓励吧。

这个游戏也是不断改进,现在好了很多,以前运行起来就是纯粹的猜数字,现在就丰富了,是不是很有意思!不喜勿喷,个人属于python自学者,还在不断完善中,有改进的还希望简友们多多指点!

利用while判断来制作一个猜数字的小游戏python

# while循环做的猜数游戏

import random

# 首先引入random包,随机生成一个数

result = random.randint(1, 10)

while True:

answer = int(input('请输入您猜的数:'))

if answer == result:

print('恭喜你答对了')

break

else:

print('猜错了')

运行结果如图:

用python实现猜数字

a?=?'1459'

for?x?in?range(7):

????j?=?0

????b?=?str(input('请输入4个数字:'))

????

????#?判断输入的是否为4位

????if?len(b)!=4:

????????print("输入有误")

????????break

????????

????#?判断输入的是否为数字

????try:

????????float(b)

????except:

????????print("输入有误")

????????break

????

????

????for?i?in?range(4):

????????if?b[i]==a[i]:

????????????j=j+1

????print(str(j)+'A'+str(4-j)+'B')

????if?j==4:

????????print("恭喜你赢了")

????????break

print("游戏结束")

用python写猜数字小游戏

核心代码给你,具体的功能还需要自己完善。

import?time,?random

class?GuessNum:

????def?__init__(self):

????????self._num?=?''

????????self.input_num?=?[]

????????self.count?=?1??????????????????????????????????????#猜对所用次数

????????self.sec?=?0???????????????????????????????????????????#猜对所用时间

????????self._generate_num()

????def?_generate_num(self):????????????????????????#产生不重复的四个数字

????????seq_zton?=?list(range(10))

????????for?i?in?range(0,?4):

????????????a?=?str(random.choice(seq_zton))???#选出一个数字

????????????self._num?+=?a

????????????seq_zton.remove(int(a))?????????????????#注意a的类型

????????self.sec?=?time.clock()??????????????????????????#开始计时

????def?check_answer(self):

????????return?self._num

????def?check_input(self):

????????num_pos,?num_value?=?0,?0???????????????#位置对和数值对的分别的个数

????????tmp?=?input("Please?input?the?number?you?guess(No?repetition),or?'c'?to?check?the?answer:")

????????if?tmp?==?'c':

????????????print(self.check_answer())

????????????tof?=?self.check_input()

????????????return?tof

????????elif?not?tmp.isalnum?or?not?len(tmp)?==?4:

????????????print("Wrong?format!")

????????????tof?=?self.check_input()????????????????#需要优化

????????????return?tof

????????self.input_num?=?list(tmp)

????????lst_temp?=?list(self._num)

????????if?self.input_num?==?lst_temp:??????????#猜对

????????????self.prt_vic()

????????????return?True

????????for?i?in?lst_temp:

????????????if?i?in?self.input_num:

????????????????if?lst_temp.index(i)?==?self.input_num.index(i):????????#位置也相同

????????????????????num_pos?+=?1

????????????????????num_value?+=?1

????????????????else:

????????????????????num_value?+=?1

????????self.prt_state(num_pos,?num_value)

????????self.count?+=?1

????????return?False

????def?prt_state(self,?num_pos,?num_value):

????????print("You've?got?%d?numbers?with?the?right?position?and?%d?numbers?with?the?right?value?only"?%?(num_pos,?num_value))

????def?prt_vic(self):

????????t?=?time.clock()

????????self.sec?=?t?-?self.sec

????????print("Congratulations!You?have?successfully?got?the?right?number!")

????????print("%d?times?and?%.2f?sec?in?total?to?get?the?right?answer"?%?(self.count,?self.sec))

gn?=?GuessNum()

while?True:

????ss?=?gn.check_input()

????if?ss:

????????b?=?input("Continue??y/n:")

????????if?b?==?'n':

????????????break

????????else:

????????????gn?=?GuessNum()

????????????continue

(责任编辑:IT教学网)

更多

推荐Windows服务器文章