Python 基础语法,python3.6语法
基础知识日7元组和字典01。相关函数1 . max . min-找出最大值和最小值max(序列)
Nums=[34,89,78,56,90,23] print (max (nums),min (nums)) 2。求数字序列中元素的和(序列)
print(sum(nums))3 . sorted-sort;不是修改原始序列中元素的顺序,而是生成一个新的列表排序(序列);
Nums=[34,89,78,56,90,23]new _ nums=sort(nums)print(nums)#[34,89,78,56,90,23] print (new _ nums) # [23,34,nums] List,sort(reverse=True)
Nums=[34,89,78,56,90,23]result=nums . sort()print(nums)#[23,34,56,78,89,90]print(result)# none 4 . len-获取序列len (sequence
5.list-list类型转换list(sequence)-所有序列都可以转换成列表;
print(list( ABC )#[ a , b , c]
02.列表推导1。列表派生-本质是创建列表的表达式结构1:
[序列中变量的表达式]
结构2:
[if条件语句序列中变量的表达式]
list 1=[10 for x in range(4)]list 2=[x for x in range(4)]print(list 2)list 3=[x * 2 1 for x in range(4)]print(list 3)scores=[89,67,34,56,10,90]list 4=[x * 2 for x in scores]print(list 4)list 5=[x for x in range(4)if x % 2]print(list 5)2。推导公式1的应用:使序列中的所有元素均匀变换。
[序列中变量的表达式]
2.应用:对序列中满足某个条件的元素进行变换(根据某个条件是否为嫩土司进行两种不同的变换)
[表达式1 if条件语句else表达式2对于序列中的变量]
3.应用:提取或删除序列中满足一定条件的元素(提取和删除)
[if条件语句序列中变量的表达式]
nums=[89,67,34,56,10,90]new _ nums=[[x]for x in enumerate(nums)]print(new _ nums)nums=[89,67,34,56,10,90,35]new _ nums=[x//2IF(x % 2==0)else x for x in nums]print(new _ nums)nums=[89,67,34,56,10,90
一元运算符:not
三元运算符:if-else
1.1中三元运算符的条件语句。C/Jave语言?表达式1:表达式2——如果条件为真,则整个运算结果为表达式1的值,否则为表达式2的值。
2.python的三元运算符表达式1 if条件语句else表达式2——如果条件为真,则整个运算结果为表达式1的值,否则为表达式2的值。
如果年龄=18岁,年龄=18a=成人否则未成年人打印(a) 04。元组1。祖先(元组)是什么?祖先是容器类型,用()作为容器的符号,多个元素用逗号分隔:(元素1,元素2,元素3…)
祖先是不可变的(检查);支持有序祖先下标操作。
元素:与列表相同
1)空元组,无意义t1=()print(type(t1),len(t1)) 2)只有一个元素的祖先——唯一的元素后面必须跟逗号T2=(12) print (T2,type (T2)) # 12class int T3=(12,)print (T3,T3。)class tuple 3)普通情况t4=(10,34,78)print(t4) 4)如果没有歧义,可以省略元祖的括号(直接用逗号分隔多个数字)t5=10,34,78print(t5,Type(t5)) 2 .Check-get elements 1)从列表中获取元素的方式支持nums=(23,45,90,78,6,65) print (nums [0]) 2)通过变量从祖先中获取元素1-保持变量个数与元组中元素个数一致Point=(10,23,)Z=pointprint(x,y,z) 3)通过变量获取祖先的元素2。如果变量的数量小于元素的数量,则必须在其中一个变量前加上*。
Info=(yldxz ,18,175,180,90,67,89)姓名,年龄,*其他=infoprint(姓名,年龄,其他)* x,y,z=infoprint (y,z) 3。元组是不可变列表——在列表中是不可变的
斯图=[FZDMF ,20,男性,60,89,70,55]
打印(stu[0])
1.字典的功能-同时保存多个不同含义的数据Stu={name: FZDMF , age: 20, gender: male , weight: 60, math:89, Chinese: 70, English: 55} print
字典是可变的(支持增、删、改);字典顺序错误(不支持下标操作)
元素的要求:字典元素是键值对。
键——键必须是不可变的数据(例如:数字、字符、祖先):键是唯一的。
价值-无要求
1)空字典:{} D1={} print (type (D1),len (D1),bool(D1))# class dict 0 fals 2)key是不可变数据D2={1: 10, a: 20,(10,20): 30}。20]: 30} # typeerror:不可哈希类型:“list”3)键是唯一的D4={a: 10, b: 20} print (D4) D5={a: 10, b: 20, b: 30}。 B:20}=={b:20, a:10}) # True 2。字典中的添加、删除和更改1)检查-获取字典的值a .获取单个值
dictionary[key]-获取字典中指定键对应的值。如果键不存在,程序会报错!
字典。get (key)获取对应于字典中指定键的值,如果键不存在,则返回None或默认值。
Dog={name :财富,年龄:3,性别: bitch } print(dog[ name ])print(dog[ gender ])print(dog . get( name )# print(dog[
当通过for循环遍历字典时,循环变量依次获取字典的键。
对于字典中的变量
传播
print(-)for key in dog:print(key,dog [key]) 3。实际应用中的词典
Class={name: Python2104 , Address : 23号教,讲师:{name :灵动台灯, Age: 18, QQ: 726550822}, Leader: { Tel: 110}, student: [{name: stu1 , school :清华大学, tel: 123 , linkman: {name :快乐的小眼桃,Tel: 125}}} # 1)获取班级名称打印对于in student: print (x.get (name ))作业1。创建一个包含10个数字的列表,保证列表中元素的顺序,重新排列列表,按降序排列列表。
比如[70,88,91,70,107,234,91,177,282,197]是随机生成的——去重后[70,88,91,107,234,177,282,197]- 70] nums1=[70,88,91,70,107,234,91,177,282,197] nums2=[nums1。
A.用1-100中的3位数字生成数据列表
结果是[3,13,23,33,43,53,63,73,83,93] print ([x for x in range (3,94,10)]) B .使用列表求导从列表中提取整数。
例如:[true,17, hello , bye ,98,34,21]-[17,98,34,21] num3=[true,17, hello , bye ,98,34,21] print(
例如[good , nice , see you , bye]-[4,4,7,3] list1=[good , nice , see you , bye] print ([len (x) for x in list1]。
class1={ name: python2104 , address: 23教,讲师:{ 姓名: 伶俐的台灯,年龄:18, QQ: 726550822},领导:{ 姓名: 舒玲,年龄:18, QQ: 2343844 ,电话: 110},学生:[ { 姓名: stu1 ,学校:清华大学,电话: 1123 ,年龄:18,分数:98,联系人:{ 姓名:幸福的泥猴桃, tel: 923}},{name: stu2 , school :攀枝花学院, tel: 8999 , age: 28, score: 76, linkman: {name: ssdzs , tel: 902}},{name: stu3 , school :成都理工大学, tel: 678 , age: 20, score: 53, linkman: {name: fzdmf , tel: 1123}},{name: stu4 , school :四川大学,电话: 9900 ,年龄:30,分数:87, 联系人:{ 姓名: kadxtd ,电话: 782}},{ 姓名: stu5 ,学校:西南交大, tel: 665 , age: 22, score: 71, linkman: {name: dbdbq , tel: 009}},{name: stu6 , school :成都理工大学, tel: 892 , age: 32, score: 80, linkman: {name: dbdbq2 , tel: 0091}},{name: stu7 , school :四川大学, tel: 431 , age: 17, score: 65, linkman: {name: dbdbq3 , tel: 0092}},{name: stu8 , school :攀枝花学院,电话: 2333 ,年龄:16,分数:32,联系人:{ 姓名: dbdbq4 ,电话: 0093}},{ 姓名: stu9 ,学校:攀枝花学院,电话: 565 ,年龄:21,分数:71,联系人:{ 姓名: dbdbq5 ,电话: 0094 }]}获取班级位置打印(类别1[地址]) 2)获取贾德姆的名字和电话
print(class1[leader][name],class1[leader][tel]) 3)获取所有学生的姓名和分数
学生:print(x[姓名],x[分数]) 4)中x的学生=班级1[学生]获取所有学生联系人的名字和电话
students=class 1[ students ]print([x[ linkman ]for x in students])5)获取班级最高分
students=class 1[ students ]score=([(x[ score ])for x in students])print(max(score))6)获取班级分数最高的学生的姓名
students=class 1[ students ]for x in students:if x[ score ]==max(score):print(x . get( name ))7)计算班级学生的平均分
students=class 1[ students ]count=0 len=0 for x in students:count=x . get( score )len=1 print(count/len)8)统计班级中未成年人数
students=class 1[ students ]count=0 for x in students:if x . get( age )18:count=1 print(count)9)用字典统计每个学校的人数,类似: {清华大学: 1, 攀枝花学院: 3}
students=class 1[ students ]count 1={ } for x in students:school=x[ school ]count 1[school]=count 1
郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。