1.变量和简单数据类型
1)字符串
xx.tilte()以首字母大写的方式显示每个单词 xx.upper()大写 xx.lower()小写 f"hello,{xx1}xx{xx2}"在输出字符串重输出变量 xx.rstrip()删除右边的空白 xx.lstrip()删除左边的空白 xx.strip()删除两边的空白
2)数
只要操作数有一个是浮点数,得到的默认总是浮点数
书写很大的数时,可以使用下划线将其中的数字分组,print时不会打印其中的下划线
可以逗号给变量连续赋值,如a,b,c=0,1,2
2.列表
1)简介
students=["chenyanheng","chenzikun"] print(students) #-->["chenyanheng","chenzikun"] print(students[0]) #-->chenyanheng print(f"众所周知{students[0].title}是一个大帅比") #-->众所周知Chenyanheng是一个大帅比
索引从0开始,要输出最后一个元素可以用xx[-1],倒数第二个xx[-2]类推
2)修改、增删元素
students=["chenyanheng","chenzikun"] students[0]="shuaibi"修改元素 students.append(“chenshuaibi”)在列表末尾添加元素 students.insert(0,“shuai”)在索引0处添加空间,并将“shuai”储存到这个地方,将其他元素都右移一个位置 del students[0]删除索引为0处的元素 xx=students.pop()返回列表末尾的元素并后将其删除 xx=students.pop(1)弹出列表索引为1的元素并删除 students.remove(“shuai”)删除列表中一个为”shuai“值的元素
3)组织列表
students.sort()按字母顺序(升序)永久地修改列表元素的排列顺序 stusents.sort(reverse=True)按字母顺序(降序)永久地修改列表元素的排列顺序 print(sorted(students,reverse=False)临时修改列表元素的排列顺序 students.reverse()反转列表元素排列顺序 len(students)获得列表长度
4)避免索引错误
3.操作列表
1)遍历整个列表
for student in students: print(student) 有缩进的代码都会重复执行
2)避免缩进错误
expected an indented block缺少缩进块 unexpected indent不必要的缩进
3)创建数值列表
for value in range(1,5): print(value) 输出1到4(因为函数range()让python 从指定的第一个值开始数,到达指定的第二个值时结束,所以在第二个值时停止没有输出) 若range()参数列表里只有一个数,则从0到这个数-1 可以用函数list()将range()的结果转换为列表如numbers=list(range(1,6)) print(numbers) 使用range()可以在第三个参数设定步长,如range(1,10,3)=[1,4,7] min(numbers)返回列表中的最小值 max(numbers)返回列表中的最大值 sum(numbers)返回列表数字的和 squares=[value**2 for value in range(1,11)]称为列表解析,可以直接将1到10每个数的平方放到列表中 ==for value in range(1,11): squares.append(value**2)
4)使用列表的一部分
创建切片:返回第一个索引指定的元素的到最后一个索引之前的元素
print(numbers[0:3])返回0,1,2号索引对应的元素形成的列表
[1:4]1,2,3号索引对应的元素
[:3]从表头到2号索引对应的元素
[3:]从3号索引对应的元素到表尾
[-3:]倒数三个索引对应的元素
student_0=students_1会使得两个列表关联,而不是将后者的副本赋给前者,当修改其中一个时,另一个也会随之改变
要实现列表赋值给另一个列表,应该使用student_0=student_1[:]
5)元组
不可以改变的列表称之为元组
元组用括号定义dimensions=(200,150)
严格地说,元组是由逗号标识的,圆括号只是为了看起来更加的整洁,如果定义一个只包含一个元素的元组,必须在这个元素后面加上逗号如my_t=(50,)
不能修改元组的元素,但可以给存储元组的变量赋值,如dimensions=(200,50)是正确的,dimensions[1]=50是错的
6)设置代码格式
缩进:四个空格符
行长:代码79个字符,注释72个字符
4.If语句
1)条件测试
一般判断是否相等时区分大小写car="Audi",if(car=="audi")返回false
如果大小写无关紧要可以car="Audi",if(car.lower()=="audi")则会返回true
if(xx!=xxx):
xxxxxxxxxx
检查不相等
多个条件都满足:and
多个条件满足一个:or
判断值是否在列表里:in
判断值是否不在列表里:not in
2)if语句
if xxxx: xxxxx elif xxx: xxxx else: xxxx
3)使用if语句处理列表
if(students):#列表students里至少有一个元素 for student in students: print(student) print("All Sign Up") else:#列表里没有元素 print("No Student")
4)设置if语句的格式
==,>=,<=,>,<左右加空格
5.字典
1)使用字典
字典是一系列键值对,每个键都与一个值相关联,可以使用键来访问相关联的值,用花括号表示一系列键值对
如alien_0={ "color":green, "point":5, } alien_0[color]访问字典中的值 alien_0[“x_position”]=0 alien_0[“y_position”]=25添加键值对 alien_0[“color”]=red修改字典中的值 del alien_0[color]删除键值对 字典中元素的排列顺序与添加顺序相同 alien_0.get(“point”,“No point value assigned”)第一个参数用于指定键,第二个参数为指定的键不存在时返回的值(默认返回None)
2)遍历字典
for key,value in alien_0.**item()**:#遍历所有键值对 print(f"Key:{key}") print(f"Value:{value}")
for key in alien_0.keys():遍历所有键(也可以省略keys(),仍会自动遍历所有键如for key in alien_0:输出结果相同)
keys()并非只能用于遍历,实际上它将返回一个列表,其中包含列表里的所有键。
for name in sorted(favorate_languages.keys()):按指定顺序遍历字典中的所有键
for value in alien_0.values():遍历所有值,没有考虑重复
为剔除重复项,可以使用集合set,集合中的每个元素都是独一无二的。
for value in set(alien_0.value()):
languages={“python”,“c”,“python",c++"}利用花括号直接创建集合(无键值对)
print(languages)
–>{“c”“python”,“c++”}集合不同于列表和字典,不会以特定的顺序存储元素
3)嵌套
字典列表:alien_0={"color":"green","point":"5"} alien_1={"color":"red","point":"5"}; alien_2={"color":"white","point":"5"} aliens=[alien_0,alien_1,alien_2] 创建三十个白色五号大小的机器人存储进alien字典: for alien in range(30): new_alien={"color":"white","point":"5"} aliens.append(new_alien) 修改前三个机器人的颜色: for alien in aliens[:3]: alien["color"]="yellow" 在字典中存储列表: 字典中的某个键对应的值是由一个列表组成 favorite_languages={ "jen":["python","c++"], "sarah":["c"], "phil":["python","go","ruby], } for name,languages in favorite_languages.items(): print(f"\n{name.title()}'s favorite languages are:") for language in languages: print("\t"+language)
#在字典里存储字典 users = { "aeinstein": { "first": "albert", "last": "einstein", "location": "princeton", }, "mcurie": { "first": "marie", "last": "curie", "location": "paris", }, }