改进咱们的小游戏shell
概有如下几个方面须要改进:dom
猜错的时候程序应该给点提示,例如告诉用户输入的值是大了仍是小了。ide
每运行一次程序只能猜一次,应该提供屡次机会给用户猜想。函数
每次运行程序,答案能够是随机的。由于程序答案固定,容易致使答案外泄。spa
条件分支orm
第一个改进要求:猜错的时候程序提示用户当前的输入比答案大了仍是小了。
游戏
Python 的比较操做符input
>左边大于右边it
>=左边大于等于右边ast
<左边小于右边
<=左边小于等于右边
==左边等于右边
!=左边不等于右边
Python的条件分支语法:
if 条件 :
条件为真(True)执行的操做
else:
条件为假(False)执行的操做
while循环
第二个改进要求:程序应该提供屡次机会给用户猜想,专业点来说就是程序须要重复运行某些代码。
请用红笔圈出你认为须要进行循环的代码:
print('------------------------------------')
temp = input("不妨猜一下我如今内心想的是哪一个数字:")
guess = int(temp)
while guess!==8:
temp=input("猜错了,请从新输入:")
guess=int(temp)
if guess == 8:
print("我草,你是我内心的蛔虫吗?!")
print("哼,猜中了也没有奖励!")
else:
if guess>8:
print("哥,大了")
else:
print("小了")
print("游戏结束,不玩啦^_^")
while循环
Python的While循环语法:
while 条件 :
条件为真(True)执行的操做
这里咱们给你们的提示是:使用and逻辑操做符
Python的and逻辑操做符能够将任意表达式链接在一块儿,并获得一个布尔类型的值。
>>> 3>2 and 3>4
False
>>> 3>2 and 3<4
True
>>> (3>2) and (3<4)
True
>>>
引入外援
第三个改进要求:每次运行程序产生的答案是随机的。
咱们须要引入外援:random模块
这个random模块里边有一个函数叫作:randint(),Ta会返回一个随机的整数。
咱们能够利用这个函数来改造咱们的游戏!
import random
secret = random.randint(1,10)
print('****************小游戏******************')
temp = input("不妨猜一下我如今内心想的是哪一个数字:")
guess = int(temp)
while guess != secret:
temp = input("哎呀,猜错了,请从新输入吧:")
guess = int(temp)
if guess==secret:
print("我想什么你都知道?")
print("哼,猜中了也没有奖励!")
else:
if guess > secret:
print("哥,大了")
else:
print("嘿,小了")
print("游戏结束,不玩啦")
闲聊之Python的数据类型
整型
布尔类型
浮点型
E记法
>>> a=0.0000000000000000025
>>> a
2.5e-18
>>> 1500000000000
1500000000000
>>> 1.5E11
150000000000.0
>>> 15E10
150000000000.0
>>> 1.5e4
15000.0
>>> True + True
2
>>> True + False
1
>>>
数据转换
>>> a="520"
>>> b=int(a)
>>> b
520
>>> b=int("小明")
Traceback (most recent call last):
File "<pyshell#11>", line 1, in <module>
b=int("小明")
ValueError: invalid literal for int() with base 10: '小明'
>>> a=5.99
>>> c=int(a)
>>> c
5
>>> a="520"
>>> b=float(a)
>>> b
520.0
>>> a=520
>>> b=float(a)
>>> b
520.0
>>> a=5.99
>>> b=str(a)
>>> b
'5.99'
>>> c=5e10
>>> b=str(c)
>>> b
'50000000000.0'
>>>
>>> str="I Love Python"
>>> str
'I Love Python'
>>> c=str(3)
Traceback (most recent call last):
File "<pyshell#29>", line 1, in <module>
c=str(3)
TypeError: 'str' object is not callable
>>>
得到关于类型的信息
type()
isinstance()
>>> a="520"
>>> type(a)
<class 'str'>
>>> type(5.2)
<class 'float'>
>>> type(1)
<class 'int'>
>>> type(True)
<class 'bool'>
>>> a="520"
>>> isinstance(a,str)
True
>>>isinstance(a,int)
False