对象的布尔值
每个对象都有一个布尔值,用bool()获取
以下对象的布尔值为False:
- False
- 数值0,0.0
- None
- 空字符串‘’,“”
- 空列表[],list()
- 空元组(),tuple()
- 空字典{},dic()
- 空集合set()
程序的组织结构
- 顺序结构
- 选择结构
- 循环结构
1.顺序结构
代码一直向下执行
2.选择结构
根据判断条件的布尔值选择性的执行部分代码
2.1单分支结构
2.2双分支结构
判断奇偶:
num=int(input("input a number:"))
if num%2==1:
print(num,"is jishu")
else:
print(num,"is oushu")
2.3多分支结构
#成绩划分
num=int(input("input your grade:"))
if num<0 or num>100:
print(num,"wrong")
elif 90<=num<=100 :
print(num,"is A")
elif num<=90 and num>=80:
print(num,"is B")
elif num<=80 and num>=0:
print(num,"is C")
python中可以左右同时加上下限,也可以用and连接
else写在最后表示余下情况,也可以不写
2.4嵌套if
判断是不是会员,且显示对应折扣
n=input("是会员吗?(Y/N):")
if n=='Y'or n=="y":
print("yes")
else:
print("no")
m=int(input("money:")) #input输出默认为str
if n=='Y'or n=="y":
if m>=200:
print("80%")
elif m>=100:
print("90%")
else:
print("no")
else:
if m>=200:
print("95%")
else:
print("no")
3.条件表达式
类似C中的条件运算符,是双分支结构的变体
#判断两数的大小
n1=float(input("num1:"))
n2=float(input("num2:"))
#法一
if n1>=n2:
print(str(n1)+"大于等于"+str(n2))
else:
print(n1,"小于",n2)
#法二
print( str(n1)+"大于等于"+str(n2) ) if n1>=n2 else (n1,"小于",n2))
#中间是判断条件 if···else 真则执行前语句,假执行后语句,语句可以括起来
4.pass语句
用来在构造程序的时候占位
5.循环结构
5.1range函数
range返回的是一个折叠起来的对象,要用list,tuple等函数打开
都是左开右闭区间
5.2while循环
a=0
r=0#初始化变量
while a<5:#条件判断
r+=a#条件执行体
a+=1#改变变量
print(r)
5.3for-in循环
#
for item in 'python':
print(item)
#p y t h o n 循环次数由字符数量而定
#
for _ in range(3):#下划线,纯循环,不赋值
print("love")
#love love love 循环次数按照迭代器对象内含内容多少而定
#计算1到100的偶数和
s=0
for item in range(1,101):
if item%2==0:
s+=item
print(s)
#三位数中的水仙花数
for i in range(100,1000):
if i==(i//100)**3+((i%100)//10)**3+(i%100%10)**3:
print(i)