一:内存管理 :
变量无需事先声明,也不用指定类型,这就是动态语言的特性
python不用关心变量的存亡,也不用关心内存的管理
python使用引用计数来判断该变量存亡 当引用计数为0 GC就会来回收它 (计数增加 x=3 记作一次 x=4时 3就被忘记 然后GC清理)
import sys 引入sys
sys.getrefcount(变量名) :(查看变量引用计数的次数)
二:程序控制 :顺序->分支->循环
单分支结构:`if 条件语句:
进入`
多分支结构:if...elif...else if elif else 分支嵌套
if condition1: if condition1:
代码块pass 代码块pass
if condition2: if condition2:
代码块pass 代码块pass
elif condition3:
False等价布尔值有:空容器(空集合set,空字典dice,空列表list,空元组tuple), 空字符串 ,None对象,0 都是False
三:循环 while语句: 大多数用在死循环当中,不知道边界时候用
while condition(条件成立进入循环):
举例 死循环
flag = 10
while flag:
print(flag)
循环 for语句:
for element in iteratable(可以迭代对象): 意思-------> 在可迭代对象里面拿出一个个元素
block(翻译:语句块)
continue语句:停止当次循环 重新开始下一次循环
break语句:中止跳出自己的循环体 不影响其他循环
练习
1 :比较两个数大小 输出最大数
a = int(input('请输入第一个数'))
b= int(input('请输入第二个数'))
if a > b:
print(a)
else:
print(b)
2 :输入一个小于100000的数 判断是几位数
a = int(input('请输入一个小于5位数'))
if (a / 10) >= 100:
if a/10 >= 1000:
print('五位数')
else:
print('四位数')
else:
if a/10 >= 10:
print('三位数')
elif int(a/10) > 0:
print('两位数')
else:
print('一位数')
3:等差数列100以内求奇数和
#第一种
sum = 0
for i in range(1,100,2):
sum = i + sum
print(sum)
#第二种
print((1+99)*50//2) #第一项加最后一项乘以50 对2取整
4:判断学生成绩
#判断学生成绩
s = int(input('请输入你的成绩'))
if s >= 70:
if s >= 90:
print('A')
elif s <= 80:
print('B')
else:
print('C')
elif s >= 60:
print('D')
else:
print('E')
5:给一个数 给你算阶乘 阶乘和
k = int(input('请输入一个数给你算阶乘>>> '))
ok = 1
count = 0
for i in range(1,k+1):
ok *= i
count += ok
print('阶乘结果=', ok)
print('阶乘和=', count)
6:判断是否为素数(质数)
# 给我一个数 计算是否位素数(质数)
c = int(input('输入一个数'))
if c <= 1:
print(c,'不是质数')
elif c == 2:
print(c,'是质数')
else:
i = 2
while i < c:
if c % i == 0:
print(c,'不是')
break
i += 1
else:
print(c,'是')
7 :计算周长 面积
#计算周长跟面积
r = int(input('输入一个半径>'))
s = 3.14 * (r**2)
l = 3.14 * (r*2)
print(s)
print(l)
8:输入若干数 比较大小保留最大数 输入0 退出
# 输入若干个数,输出最大数
m = int(input('输入一个数'))
while True:
c = int(input('再输入一个数'))
if c != 0:
n = c
if n > m:
m = n
print('Max=',m)
else:
break
9:输入若干数保留输入的数 求一共的算数平均数 , 输入0 退出
#### 输入n个数,求每次输入后的算数平均数
n = 0 #次数
sum = 0 #和
while True:
i = int(input('>>>'))
if i == 0:
break
n += 1
sum += int(i)
avg = sum/n
print(avg)