Python环境安装与基础语法(4)——内存管理、if分支

时间:2023-03-09 19:02:55
Python环境安装与基础语法(4)——内存管理、if分支

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)