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)

 

posted @ 2019-09-26 17:41  chili7  阅读(196)  评论(0编辑  收藏  举报