发布时间:2019-07-10责任编辑:满帅 浏览:972
一.循环与随机
1.while :
while 条件:
# 如果条件为真,那么循环体则执行
# 如果条件为假,那么循环体不执行
如果想要中止循环需要使用break语句。
如果想要中止本次循环开启下一次循环需要使用continue语句。
2.random :
import random
aim_num = random.randint(0,9) #取范围为0~9的一个随机数
print('随机数为 : ',aim_num)
与random模块相关的方法是不能直接访问的,需要先导入random模块才能调用相关方法。
3.if、else
if 条件1:
满足条件执行代码
elif 条件2:
else:
条件1条件2都不满足就走这段
注意:
1、每个条件后面要使用冒号 :,表示接下来是满足条件后要执行的语句块。
2、使用缩进来划分语句块,相同缩进数的语句在一起组成一个语句块。
3、在Python中没有switch – case语句。
4.结合使用实例
写了一个很多教程里都会讲到的猜数字实例:
import random
aim_num = random.randint(1,100)
num = 0
i = 0
while num != aim_num :
num = int(input("请输入一个数字(1~100):"))
if num > 100 or num < 1 :
print('输入的数字必须在1~100的范围之内')
elif num > aim_num :
print('大了')
else:
print('小了')
i+=1
else :
print('恭喜你,答对了!用了',i,'次')
二.字符串操作
1.计算字符串中某字符出现的次数和字符串中是否包含某字符(串):
msg = "If there are an odd number of miners, then the core is empty."
print(msg.count('e'))
#结果为9
print(msg.count('e',0,8))
#结果为2 从索引为0的第一个字符开始向后取8位
print(msg.find("miners"))
#结果为30 如果包含则返回搜索字符(串)开始的索引值,否则返回-1
print(msg.find("miners",0,20))
#结果为-1 搜索比对索引0~20的字符串
print(msg.index("miners"))
#结果为30 如果包含同find方法,否则会抛出ValueError
2.拼接字符串:
#拼接 方法1(+号拼接)
one_str = "i'm "
two_str = "zhuoren"
print(one_str + two_str)
#方法2 join方法
strlist = ["i'm ","zhuoren"]
print(''.join(strlist))
#方法3 格式化
print("%s%s"%(one_str,two_str))
#三种方法输出结果都为:i'm zhuoren
#拼接字符串较少时效率:方法1 ≈ 方法3 > 方法2 拼接数量较多时效率:方法2 > 方法3 > 方法1
3.分割、截取、替换字符串:
#分割
#方法1 str.split(不支持正则及多个切割符号)
msg = "hello,python,i'm zhuoren"
print(msg.split(','))
#方法2 re.split(支持正则及多个切割符号)
from re import split
msg = "hello,python,,i'm zhuoren"
print(split('s*,',msg))
#结果都为:['hello', 'python', "i'm", 'zhuoren']
#截取
str = "0123456789"
print (str[6:]) #6789
print (str[:-3]) #0123456
print (str[::-1]) #9876543210
print (str[-3:-1]) #78
print (str[-3:]) #789
print (str[:-5:-3]) #逆序截取,str[:-5:-1]为倒序截取后半段即9876,又因步长大小为3所以结果为96
#替换
name ="hello zhuoren,你好 zhuoren"
print(name.replace('zhuoren','world',1))
#结果为:hello world,你好 zhuoren
4.判断是否为字母、数字组成:
name = "zhuoren512"
print(name.isalnum()) #字符串由字母或数字组成
#True
print(name.isalpha()) #字符串只由字母组成
#False
print(name.isdigit()) #字符串只由数字组成
#False
5.格式化输出字符串:
str = "{} {} {}".format('tom',25,'male')
str = "{0} {2} {1}".format('tom','male',25)
str = "{name} {age} {sex}".format(age=25,name='tom',sex='male')
print (str)
#结果都为:tom 25 male
6.字符串补齐
name = "zhuoren512".rjust(12) #向右对齐,不齐往左边补空格
print(name)
#结果为 zhuoren512
name = "zhuoren512".ljust(12) #向左对齐,不齐往右边补空格
print(name)
#结果为zhuoren512
name = "zhuoren512".center(12) #居中对齐,不齐往两边补空格
print(name)
#结果为 zhuoren512
name = "zhuoren512"
print(name.zfill(15))
#结果为:00000zhuoren512
name = "zhuoren 512"
str = name.expandtabs()
# 前面的补全
#默认将一个tab键变成8个空格,如果tab前面的字符长度不足8个,则补全8个,如果tab键前面的字符长度超过8个不足16个则补全16个,以此类推每次补全8个。
print(str)
#结果为:zhuoren 512
游戏组供稿