Python条件语句就是通过一条或者多条语句执行结果(True or Flase)来决定执行代码块。
if单分支语句 if 逻辑语句: 语句(块)demo:
learning = "Python" if learning == "Python": print("好巧啊") if双分支语句 if 逻辑语句1: 语句(块)1 else: 语句(块)2demo:
learning = input("请输入你学习的编程语言") if learning == "Python": print("好巧啊") else: print("原来你在学习java") if多分支语句C语言中
if if if else else elsePython中,elif:else if缩写成elif
if 逻辑语句1: 语句(块)1 elif 逻辑语句2: 语句(块2) ... elif 逻辑语句 n-1: 语句(块)n-1 else: 语句(块)n根据百分制考试成绩返回五级分制成绩:
score =int(input("考试成绩")) if score>=90 : print("A") elif score>=80: print("B") elif score>=70: print("C") elif score>=60: print("D") elif score>=0: print("E")从控制台输入一个三位数,判断其是否为水仙花数
153 = 1 3 + 5 3 + 3 3 1^3+5^3+3^3 13+53+33
A = int(input("输入一个三位数")) a = A // 100 b = (A-a*100)//10 c = A-b*10-a*100 e = a**3+b**3+c**3 if A == e: print("是水仙花数") else: print("不是水仙花数")格式:
while: 语句(块)(1)利用while来打印1-100的数字:
i = 0 while True: i+=1 print(i) if i ==100: break(2)利用while来求1-100的和
count = 0 sum = 0 while count<=100: sum += count count += 1 print(sum)(3)利用while求1-100内所有的偶数和。
count = 1 sum = 0 while count<=100: count+=1 if count%2 == 0: sum+=count print(sum)(4)求100-999内所有水仙花数
count = 99 while count<999: count+=1 a = count // 100 b = count % 100 //10 c = count % 10 e = a ** 3 + b ** 3 + c ** 3 if count == e: print(count)Python中for,可以用来遍历任何序列(字符串,列表,元祖,etc)
格式:
for i in 序列: 语句(块)1.range()
range(end) #[0,end-1],end为整数 range(start, end)#[start,end-1],两数均为整数 range(start,end,step)#[start,start+step,start+2*step,...,end]while…else…,for…else…中while和else是一块的,for和else也是一块的。
当有break或者return的时候就会跳出while。如果没有break或者return,不管while是否执行,都会执行else语句
注意:
单引号和双引号使用时需要注意匹配关系,且不可以换行如果需要换行,需使用三单引号或者三双引号demo:
a = ["hello"] b = [",Python"] print(a+b) #拼接基于同一种数据类型demo:
a = "6" print(a * 3)demo:
sr = "Python" for i in range(len(sr)): print(sr[i],end=" ") sr = "Python" for i in range(len(sr)): print(sr[:i],end=" ")sr = “Life is short,you need python”
sr.lower():转小写sr.upper():转大写sr.swapcase():大小写互换sr.title():转为标题形式sr.capitalize():首字母大写demo:
certid = "AbCd" ipt = input("请输入验证码:") if ipt.lower() == certid.lower(): print("输入成功") else: print('对不起,输入有误,请重试')sr = “Life is short,you need python”
sr.center([len],[填充符号]),居中对齐sr.ljust([len],[填充符号]),居左对齐sr.rjust([len],[填充符号]),居右对齐sr.zfill([len]),居右对齐,默认填充0demo:
sr = "Life is short,you need python" print(sr.center(41,"*")) print(sr.ljust(41,"#")) print(sr.rjust(41,"#")) print(sr.zfill(41))demo
sr = "\n\t******Life is short,you need python******\n\t" #\n换行\t 一个tap键 print(sr.strip()) # 默认删除\n\t print(sr.strip("*")) #从头开始匹配,匹配不成功则无效demo:
sr = "\n\t******Life is short,you need python******\n\t" print(sr.count("o",20,41))sr.find( ),查找元素并返回第一次出现的元素的索引值 ,查找不到返回-1
sr.index( ),查找元素并返回第一次出现的元素的索引值,查找不到元素会报错
sr.rindex( ),从右往左查找元素并返回第一次出现的元素的索引值
sr.replace( [现有],[替新]),
demo:
sr = "\n\t******Life is short,you need python******\n\t" print(sr.find("z",12,41)) print(sr.index("e",19,41)) print(sr.replace("you need","I use")) print(sr.replace("t","T",1))sr.isalnum(),判断的字符串有字母或者数字组成
sr.isalpha(),仅有字母
sr.isdigit(),仅有数字
demo:
a = "wangzixin666eeee" b ="666" print(a.isalnum()) print(b.isalpha()) print(b.isdigit())demo:
sr = "Life is short,you need python" print("+".join(sr)) li = ["I","Love","you"] print(" ".join(li)) print(sr.split("o",2)) #分割返回的都是列表 print(sr.partition("o")) #第一个就停止切割了demo:
for i in range(ord("a"),ord("z")+1): print(chr(i),end=" ")%格式化字符串 用%匹配参数,注意个数一一对应。
"%d%%" % 100位置映射
print("Name:{},age:{}".format("Tom",18))关键字映射
print("Name:{},age:{},{address}".format("Tom",18,address ="gongshu,hangzhou"))#关键字必须放最后 元素访问 print("第一个元素是:{0[0]},第二个元素是:{0[1]},第三个元素是:{0[2]};第四个元素是:{1[0]},"\ "第五个元素是:{1[1]}".format(("www","google","com"),("baidu.","com")))语法格式:
print(value, ..., sep=' ', end='\n', file=sys.stdout, flush=False)等价于:
print(value1,value2,value3 ..., sep=' ', end='\n', file=sys.stdout, flush=False)设计"过7游戏"的程序,打印出1-100之间除了含7和7的倍数之外的所有数字
for i in range(1,101): if i%10==7 or i//10==7 or i%7==0: continue else: print(i)编写程序用户登录程序仅有三次机会。(if和for)
import getpass for i in range(3): number= input("账号") password = getpass.getpass("密码") #不显示明文 if number== "wangzixin" and password == "123456": print("登录成功") break else: print("账号或密码有误")编写程序实现,判断一串字符串是否为有效变量名
import string alpha = string.ascii_letters+"_" nums = string.digits myinput = input("输入字符串") if len(myinput)>1: if myinput[0] not in alpha: print("无效变量名称") else: for otherChar in myinput[1:]: if otherChar not in alpha + nums: print("存在非字母下划线数字字符,无效变量名称") break else: print("有效变量名") else: print("请重新输入一遍")最多猜10次数字的游戏,猜测范围1~100,根据input内容提示猜大或者猜小,如果猜中,结束循环
import random num = int(input("猜数字")) realnum = random.randint(1,100) for i in range(10): if num == realnum: print("你猜对了") break elif num>realnum: print("大了") num = int(input("猜数字")) elif num<realnum: print("小了") num = int(input("猜数字"))用while循环实现输出2-3+4-5+6…+100的和。
i=1 sum=0 while i<=99: i+=1 if i%2==0: sum+=i else: sum=sum-i print(sum)使用循环实现九九乘法口诀表。
for i in range(0, 10): for j in range(1, 10): if i >= j: print("%d * %d = %d" % (j, i, i * j,), end=" ") print( )已知列表li=[22478,24066,23398,38498],利用字符串拼接及遍历,输出结果“城市学院”。
li=[22478,24066,23398,38498] x=str() for i in range(len(li)): x=x+chr(li[i]) print(x)