比较运算符
if
Age = 19
#if age is greater than or equal to 18:
if age >= 18:
print("Adult. You can go to Internet cafe....")
有几个该注意的地方,首先是大于小于不等于等于的表示
大于等于:>=
小于等于:<=
等于:==(为什么不是=,是因为=是赋值)
不等于: !=
以上不能拆开,拆开就错了
逻辑运算符
一共有三个:并且、或者、取反
或者
you = input("你去吗?")#去或者不去
yourwife = input("你老婆去吗?")#去或者不去
#if you=="去" 或者 yourwife=="去":
if you == "去" or yourwife == "去":
print("这件事可以办成!")
并且
you = input("你去吗?")#去或者不去
yourwife = input("你老婆去吗?")#去或者不去
#if you=="去" 并且 yourwife=="去":
if you == "去" and yourwife == "去":
print("这件事可以办成!")
另外一个
color = input("你白吗?")
money = int(input("你的财产总和是多少:"))
beauty = input("你美吗?")
if color=="白" and money>1000000 and beauty=="美":
print("白富美就是你!")
print("haoxianmu")
else:
print("普通")
print("普通")
输入结果
你白吗?白
你的财产总和是多少:10000000000
你美吗?美
白富美就是你!
haoxianmu
该注意的点:
①无论if还是else后面的: 一定不要有任何字符,包括空格
②tab键,print前有无空格是有区别的,python是根据前面的空格来判断if执行哪些结果,如果前面没有空格,那就不在if 执行范围内。
取反 not
a = 30
if not (a>0 and a<=50):
print("在0到50之间。")
输出条件不满足
if-elif的使用
用于执行多条件代码
if 条件1:
xxxxx1
elif 条件2:
xxxx2
elif 条件3:
xxxx3
..........
sex = input("请输入你的性别:")
if sex == "男":
print("你是男性,可以留胡子。。。。")
elif sex == "女":
print("你是女性,可以留长发。。。。")
else:
print("你很特别!")
elif 前面必须有if
day = int(input("请输入一个数字(1~7):"))
if day==1:
print("星期1")
elif day==2:
print("星期2")
elif day==3:
print("星期3")
elif day==4:
print("星期4")
elif day==5:
print("星期5")
elif day==6:
print("星期6")
elif day==7:
print("星期7")
else:
print("你输入有问题")
结果
请输入一个数字(1~7):5
星期5
请输入一个数字(1~7):9
你输入有问题
while循环
程序的三大执行流程
1.顺序执行
2.选择执行
3.循环执行
while 条件:
条件满足的时候执行的事情
i = 1
a = int(input("请输入一个数字:"))
while i<=a:
print(i)
i = i+1
结果
请输入一个数字:9
1
2
3
4
5
6
7
8
9
注意点:
如果想循环到输入的数字,也就是9,while下循环的语句必须是print 在前
若改成
i = i+1
print(i)
结果会输出到10,因为每次判断条件后先+1再输出,和先输出再+1结果是不一样的。
另外
print(i) 和print("%d"%i)
是一个性质的。
if 嵌套
上火车
ticket = int(input("买了票填1,没买票写0:"))#买了票是1,没买票是0
knifelength = int(input("输入刀子长度:"))#刀子的长度
#先判断是否购买车票
if ticket==1:
print("你可以进站了,接下来进行安检!")
if knifelength<=10:
print("你通过了安检!")
else:
print("你安检过不了啊兄弟")
else:
print("你还没买票呢兄弟")
当做某件事需要满足前提条件时,就需要if嵌套,也就是if下有if
打印矩阵 while嵌套
i=1
while i<=5:
j=1
while j<=5:
print("*",end="")
j=j+1
print("")
i = i+1
结果
*****
*****
*****
*****
*****
注意点:
①如果直接是print(),是默认换行的
②要想不换行,要变成print("*",end="")
③换行时注意print 前的空格
“j = j+1” = “j+=1”
“a+=34-31+44-22” = “a = a+(34-31+44-22)”
打印三角形
i=1
while i<=5:
j=1
while j<=i:
print("*",end="")
j+=1
print("")
i+=1
结果
*
**
***
****
*****
注意点,在j的while循环里,i是一直不变的,所以可以利用i的值。
99乘法表
i=1
while i<=9:
j=1
while j<=i:
print("%d*%d=%d\t"%(j,i,i*j),end="")
j+=1
print("")
i+=1
结果
1*1=1
1*2=2 2*2=4
1*3=3 2*3=6 3*3=9
1*4=4 2*4=8 3*4=12 4*4=16
1*5=5 2*5=10 3*5=15 4*5=20 5*5=25
1*6=6 2*6=12 3*6=18 4*6=24 5*6=30 6*6=36
1*7=7 2*7=14 3*7=21 4*7=28 5*7=35 6*7=42 7*7=49
1*8=8 2*8=16 3*8=24 4*8=32 5*8=40 6*8=48 7*8=56 8*8=64
1*9=9 2*9=18 3*9=27 4*9=36 5*9=45 6*9=54 7*9=63 8*9=72 9*9=81
\t相当于一个TAB键
\n是换行
石头剪刀布
import random
player = int(input("请输入 0石头 1剪刀 2布:"))
computer = random.randint(0,2)
if (player==0 and computer==1) or (player==1 and computer==2) or (player==2 and computer==0):
print("你赢了,牛批!")
elif player==computer:
print("平局,再来!")
else:
print("你输了,哈哈~!")
插入一个随机生成数
import random#引入一个工具
computer = random.randint(0,2)#()中为0,1,2中任意一个数
for循环
name = "laowang"
for temp in name:
print(temp,end=" ")
结果
l a o w a n g
for的作用相当于读取name里的每一个字符。
取1~100之间的偶数
i = 1
while i<=100:
if i%2==0:
print(i)
i+=1
i%2 是指i整除2的余数
打印前20个偶数(接上一个)
i = 1
num = 0
while i<=100:
if i%2==0:
print(i)
num+=1
if num==20:
break
i+=1
break与continue的区别
break
i = 0
while i<=5:
i+=1
print("_______")
if i==3:
break
print(i)
结果
_______
1
_______
2
_______
continue
i = 0
while i<=5:
i+=1
print("_______")
if i==3:
continue
print(i)
结果
_______
1
_______
2
_______
_______
4
_______
5
_______
6
break是当条件满足时结束循环(作用范围仅为其所在while)
continue是仅仅忽略满足条件时其下方的指令,循环照样继续