temp = input("猜数字")#temp是一个字符串变量,需要转化为整型;input是一个内置函数
guess = int(temp)#一个等号表示赋值
if guess == 8:#两个等号表示是否相等
print("wocao")
print("猜对了也没有奖励")
else:
print("猜错啦应该是8")
print("gg")
- BIF:Built-in functions内置函数。
帮助程序员便捷得编写程序。
python有多少个内置函数?
dir(__builtins__)
变量和字符串
变量名就像是我们现实社会的名字,把一个值赋值给一个名字时,ta回存储在内存中,称之为变量,在大多数语言中都把这种行为称为“给变量赋值”
teacher = 'laojiayu'
print(teacher)
first = 3
second = 8
third = first + second
print(third)
结果:
字符串的拼接:
myteacher = 'xiaojiyu'
yourteacher = 'heiye'
ourteacher = myteacher + yourteacher
print(ourteacher)
结果:
- 在使用变量前要对变量进行赋值
- 变量名可以包括字母、数字、下划线,但是变量名不可以以数字开头
- 大小写敏感
- 单引号和双引号不挑剔,’5‘+’8‘会输出’58‘字符串进行拼接。
- 如果说字符串里有’ 可以用\来转义’let’s go’
- \是可以自己对自己转义的,假如一个字符串有很多哥反斜杠,在字符串前加r
str = 'C:\now'#\n会跳行
print(str)
str = r'C:\now'
print(str)
如果希望得到一个跨越多行的字符串,例如
我爱xx
正如我哎xx
他那xxx
xxxxx
- 此时我们需要三重引号字符串
str= """正如我爱qe
是因为qe
还有
还有
1"""
print(str)
结果:
- 猜错的时候应该给点提示,例如用户输入的值是大了还是小了
- 每运行一次程序只能猜一次,应该提供多次机会给用户猜测
- 每次运行程序,答案可以是随机的。
因为程序答案固定,容易导致答案外泄
第一个改进要求:
- 条件分支if:else:
print('欢迎来到猜数字游戏')
temp1 = input('输入一个数字')
temp = int(temp1)
if temp == 8 :
print('猜对了')
else:
if temp > 8:
print('大了')
if temp < 8:
print('小了')
while temp != 8:
temp1 = input('猜错了重新输入一个数字吧:')
temp = int(temp1)
if temp > 8:
print('大了')
if temp < 8:
print('小了')
if temp == 8:
print('猜对了')
print('buwanle')
- python的and逻辑 *** 作符可以将任意表达式连接在一起,并得到一个布尔类型的值
print((3>2)and(1<2))
- 改进要求:每次运行程序产生的答案是随机的
- 使用random模块,里边有一个函数叫做randint(),ta会返回一个随机的整数,可以利用这个函数来修改我们的游戏,
import random
secret =random.randint(1,10)
闲聊之python的数据类型
python的数值类型
- 整型
- 布尔类型:true和false
- 浮点型
- e记法:科学计数法15e10就是150000000000.0会变成浮点型
类型转换:
整型:int()如:a='520' b=int(a)
a=5.99
c=int(a)
c=5
浮点数:float()将一个字符串或者整数转化成浮点数。
a='520'
b=float(a)
b=520.0
a=520
b=float(a)
b=520.0
字符串:str()
- 获取关于类型的信息type()
a='520'
type(a)
class’str’
- 更多的是用isinstance()来确定数据类型
a='520'
isinstance(a,str)
a=520
isinstance(a,str)
True
false
- 算数 *** 作符 :+ - * / % ** //
a=a+3太麻烦也可以写成a += 3
a = b = c =d = 10
a += 1
b -= 3
c *= 10
d /= 8
d是1.25,是真正的除法
//是以前的地板除法,把小数点省掉
%是取余
-
优先级问题
-
比较 *** 作符
-
逻辑 *** 作符:and or not not是一元 *** 作符 not4=false not0=true
打飞机框架:
加载背景音乐
播放背景音乐(设置但单曲循环)
我方飞机诞生
interval = 0
while true
if 用户是否点击关闭按钮
退出程序
interval += 1
if interval == 50:
interval = 0
小飞机诞生
小飞机移动一个位置
屏幕刷新
if 用户鼠标产生移动:
我方飞机中心位置 = 用户鼠标位置
屏幕刷新
if 我方飞机与小飞机发生肢体冲突
我方挂,播放撞击音乐
修改我方飞机图案
打印“game over”
停止背景音乐,最好淡出
了不起的分支和循环2
- 按照100分制,90分以上成绩为A,80到90为B,60到80为C,60以下为D,写一个程序,当用户输入分数,自动转换为ABCD的形式打印。
- 解题方案1:
score = int(input('请输入一个分数'))
if (90 <= score < 100):
print('A')
if (80 <= score < 90):
print('B')
if (60 <= score < 80):
print('C')
if (0 <= score < 60):
print('D')
if (score < 0) or (score > 100):
print('输入错误')
当判断完A之后后边还在继续判断,浪费CPU的时间
- 解题方案2:用if else不断嵌套
- 解题方案3:
score = int(input('请输入一个分数'))
if (90 <= score < 100):
print('A')
elif(80 <= score < 90):
print('B')
elif(60 <= score < 80):
print('C')
elif(0 <= score < 60):
print('D')
else:
print('输入错误')
A判断完成后不再进行后边的判断,会节省时间
python可以有效得避免“悬挂else”
- 三元 *** 作符
x,y=4,5
if x<y:
small = x
else:
small = y
#三元 *** 作符
small = x if x<y else y
- assert断言,当这个关键字后边的条件为假时,程序会自动崩溃,抛出异常
- 例如:
assert 3 > 4
这个关键字对于调试很有用
while 条件:
循环体
for循环:
for 目标 in 表达式:
循环体
favourite = 'fish c'
for i in favouite:
print(i,end=' ')#end会关闭自动换行
##len是返回字符串长度
member = ['xiaojiayu','zls','wqe']
for each in member:
print(each,len(each))
- range()语法:
range([strat,]stop[, step=1])
用中括号括起来的两个参数是可选的,step=1表示第三个参数的值默认值为1,range这个BIF的作用是生成一个从start参数的值开始到stop参数的值结束的数字序列,经常用在for循环里。
each=list(range(5))#[0,1,2,3,4]
print(each)
for i in range(5):
print(i)#0,1,2,3,4
for i in range(1,10,2):
print(i)#1,3,5,7,9步长是2,起始为1
- continue的用法,回到循环的判断语句处:
for i in range(10):
if i%2 != 0:
print(i,end=' ')
continue#进行下一次循环
i += 2
print(i,end=' ')
- break的用法
for i in range(10):
if i%2 != 0:
print(i,end=' ')
break#直接结束循环
i += 2
print(i,end=' ')
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)