============================================================================
if elif 练习
num=int(input('请输入一个成绩:'))
if num>=90 and num<=100:
print('优秀')
if num>=80 and num<=90:
print('良好')
elif num>=70 and num<=80:
print('一般')
elif num>=60 and num<=70:
print('及格')
else:
print('不及格')
#==================================
num=int(input('请输入一个成绩:'))
if num>=90 and num<=100:
print('优秀')
elif num>=80 and num<=90:
print('良好')
elif num>=70 and num<=80:
print('一般')
elif num>=60 and num<=70:
print('及格')
else:
print("不及格")
#====================================
num=int(input('请输入一个成绩:'))
if num>=90:
print('优秀')
elif num>=80:
print('良好')
elif num>=70:
print('一般')
elif num>=60:
print('及格')
else:
print("不及格")
将下列列表输出结果为 001 张三 28 男 002 李四 38 男 003 王五 28 女
a={ "001":{"name":"张三",'age':28,'sex':"男"},
"002":{"name":"李四",'age':38,'sex':"男"},
"003":{"name":"王五",'age':28,'sex':"女"},
}
for k,v in a.items():
print(k,end=" ")
for k1,v1,in v.items():
print(v1,end=" ")
print()
给下列列表追加“sport”:“篮球”
a={ "001":{"name":"张三",'age':28,'sex':"男"},
"002":{"name":"李四",'age':38,'sex':"男"},
"003":{"name":"王五",'age':28,'sex':"女"},
"004":{'name':'小红','age':28,'sex':"男"}}
for k,v in a.items():
print(k,v)
if v['sex']=='男':
v['sport']='篮球'
print(a)
找出年龄最大的那个人
a={ "001":{"name":"张三",'age':28,'sex':"男"},
"002":{"name":"李四",'age':38,'sex':"男"},
"003":{"name":"王五",'age':28,'sex':"女"},
"004":{'name':'小红','age':28,'sex':"男"}}
max_age=a['001']['age']
for k in a.keys():
if a[k]['age']>max_age:
max_name=a[k]['name']
max_age=a[k]['age']
print(max_name)
集合
a={}
print(type(a)) #空集合是一个字典
a=(1)
print(type(a)) #这是一个数字类型
a=(1,)
print(type(a)) #这是一个元祖
a=set()
print(type(a)) #这是一个集合
a=()
print(type(a)) #这是一个元祖
a=set('123454321')
print(a) # {'5', '2', '3', '1', '4'} 集合是无需不重复的
a={1,2,3,4,5}
for x in a:
print(x) #访问集合的方法,将其依次放到 x 这个变量里
a={1,2,3}
a.add(3)
a.add(4)
print(a) #集合是不重复的
a={1,2,3} #结合两个集合
b={3,4,5}
c=a.union(b)
print(c)
a={1,2,3}
b={3,4,5}
print(a-b) #两个集合相减
print(a.difference(b))#两个集合的不同地方 谁在 . 前面就是那个集合里取
a={1,2,3,4,5,6}
b={3,4,5,6,7,8}
c=a.intersection(b) #两个集合的交集
d=a.symmetric_difference(b) #两个集合共同不同之处
print(c)
print(d)
a={1,2,3,4,5}
b={1,2,3}
print(a.issuperset(b)) # a是 b的父集 返回 True 不对则是 false
print(b.issubset(a)) # b是 a 的子集 返回 True 不对则是 false
a={1,2,3}
b={4,5,6}
print(a.isdisjoint(b)) #这是判断两个集合是否 没有 交集 如果没有,返回True
函数
def area(r): # r为形参
s=3.14*r**2
c=2*3.14*r
return s,c
result=area(3) # 3 为实参
print('面积是%.2f,周长是%.2f'%result)
函数
def qiuhe(a,b):
c=a+b
print(c)
qiuhe(3,4)
qiuhe(5,6)
函数不可变类型
def func1(a):
a+=3
print(a)
x=10
func1(x)
print(x) # x 不会受到改变
函数可变类型
b=[]
def func2(a): #接受参数
a.append(3) #列表里添加 3 这个元素
func2(b) #把 b 传给形参 a
print(b) # 结果是 3 # b 会受到改变
b=[1]
def func(a):
a=10 #这是对 a 的赋值,a指向了10的内存地址 这跟append 不一样
func(b)
print(b) # [1]
局部变量语全局变量
y='123'
def hehe():
a=10
b=20
print(locals())
hehe()
x=100
print(globals())
局部变量跟全局变量
a=101
def func():
b=10 # b 是局部变量
c=a+b #局部变量里没有a 就去外面找全局变量
print(c)
func()
print('我是全局',a)
如果局部变量跟全局变量重名的话先用局部变量
a=101
def func():
b=10 # b 是局部变量
a=20
c=a+b #此处的 a 是局部变量中的a,其对应的值是20
print(c) #结果 30
func()
print('我是全局',a)
a=[10]
def func():
a.append(2)
func()
print(a)
#上下两者有区别
a=[10]
def func():
a=20 #但是开辟了一个新的变量,跟外部的a没有任何关系
func()
print(a)
==================
a=7
def func():
print(a)
a=8
func() #错误的函数
a=7
def func(): #错诶的函数
a+=7
print(a)
func()
===============================
作用域
def waibu(x): #这是外部函数
def neibu(a,b): #定义一个内部函数
c=a+b
print(c)
neibu(x,5) #只有本函数才能调用内部函数
waibu(10)
变量的查找顺序
===============LEGB 单词是
a=100
b=200
c=1000
def waibu():
a=30
b=300
def neibu():
a=50
print(a) #使用局部 locals
print(b) #使用嵌套 enclose
print(c) #使用全局 globals
print(__import__) #使用内置 built-in
neibu()
waibu()
菜鸟"Python"之————题海战术(7)
最新推荐文章于 2019-03-26 21:15:52 发布