Python内存管理
python中有自动清理内存垃圾的功能,当变量的引用计数为0,则可以被有计划的垃圾回收GC
常量会在系统中被多次引用,所以常量的引用计数无法确定
程序控制
顺序:按照先后顺序逐条执行
分支:根据不同条件判断,条件满足执行对应代码块,只能进入到一个分支
循环:条件满足就反复执行,不满足就不执行或不再执行
if分支结构
单分支结构
if condition: #condition必须是一个bool类型,如果不是bool则需要等效值 代码块 else: 代码块
真值表:等效为False的condition 0 False ' ' " "空字符串 None ( )空元组 [ ]空列表 { }空字典 set( )空集合
多分支结构
if condition: 代码块 elif condition: 代码块 else: 代码块
分支嵌套
if condition:
if condition: 代码块 else: 代码块 else: if condition: 代码块 elif condition: 代码块 else: if condition: 代码块 else: 代码块
练习:输入一个不超过5位的正整数,判断其有几位
a = int(input('>>')) if a > 99999: print('超过范围') elif a > 9999: print(5) elif a > 999: print(4) elif a > 99: print(3) elif a > 9: print(2) else: print(1)
折半思想
a = int(input('>>')) if a > 999: if a > 99999: print('超过范围') elif a > 9999: print(5) else: print(4) else: if a > 99: print(3) elif a > 9: print(2) else: print(1)
不超过9位两次折半
a = int(input('>>')) if a > 99999: if a > 9999999: if a > 999999999: print('超出范围') elif a > 99999999: print(9) else: print(8) else: if a > 999999: print(7) else: print(6) else: if a > 999: if a > 9999: print(5) else: print(4) else: if a > 99: print(3) elif a > 9: print(2) else: print(1)