print() 是python中常见的内置函数,用于将输出打印到控制台print("hello world") print(123) print("姓名","张三","年龄:",18)
name = "张三” age = 18print(f"我叫{name},今年{age}岁") #我叫张三,今年18岁#可以执行表达式print(f"10年后我{age + 10}岁”pi = 3.1415926print(f"{pi:.2f}") #3.14rate = 0.856print(f"{rate:.1%}") #85.6%print(f"{'居中':^10}") # ‘ 居中 ’print(f"{'左对齐':<10}") # '左对齐 ’print(f"{'右对齐':>10}") # ' 右对齐’
name = "张三"age = 18#按位置print("我叫{},今年{}岁".format(name,age))#按名称print("我叫{name},今年{age}岁".format(name=name,age=age))pi = 3.1415926print("{.3f}".format(pi)) #3.142
name = "张三" age = 18print("我叫%s,今年%d岁" %(name,age))
#sep:分隔符print("a","b","c",sep="-") #a-b-c#end:结束符print("hello",end=" ")print("world") #hello world#file:输出到文件with open("output.txt","w") as f: print("写入文件",file=f)
print(5+3) #8print("5+3") #5+3 (字符串拼接)print(5>3) #Trueprint(len("abc")) #3name = "李四"print(name) #李四(变量值)print("name") #name(字符串)
定义:有序的可变序列类型,可以包含任意类型的元素,用[]表示,元素用逗号分隔特点:有序,可变(可修改内容),可重复 ,可嵌套,动态#1.直接创建list1 = [1,2,3]list2 = []#2.使用list()构造函数list3 = list("hello") #['h','e','l','l','o']list4 = list(range(5)) #[0,1,2,3,4]list5 = list((1,2,3)) #元组(1,2,3)转列表[1,2,3]
基本语法:[表达式 for 变量 in 可迭代对象 if 条件]squares = [x**2 for x in range(5)] #生成平方数evens = [x for x in range(20) if x%2 == 0] #带条件的推导cycle = [i*j for i in range(3) for j in range(3)] #嵌套循环#生成一个列表[0,0,0,0,1,2,0,2,4]#等价于:cycle = []for i in range(3): for j in range(3): cycle.append(i*j)words = ['hello','world','python']upper_words = [word.upper() for word in words] #修改为大写results = ['yes' if x%2 == 0 else 'no' for x in range(5)]
#1.索引访问print(a[i]) #i的最小值为0,正索引从0开始,负索引从-1开始a = [[1,2,3],[4,5,6],[7,8,9]]element = a[1][2] #6,第二行第三列#2.切片操作#基本切片[start:end](end不包含)#带步长的切片[start:stop:step]#切片赋值numbers[2:5] = [2,3,4] #替换索引2-4的元素numbers[1:3] = [] #删除索引1-2的元素
.append() #在末尾添加一个元素(作为整体).extend() #将可迭代对象的元素逐个添加.insert() #在指定位置插入lst = [1,2,3]lst.insert(len(lst),4) #等同于append()
.remove() #删除第一个匹配项,括号里的值在列表里需存在,否则就报错.pop() #删除并返回指定索引的元素,不带参数则删除最后一个元素#del 语句del a[i] #删除第i个元素del a[i:j] #删除i到j-1的元素del a #删除整个变量.clear() #清空所有元素,成为空列表
.index() #查找元素索引,不存在则报错numbers.index(i,element) #从索引i开始找element.count() #统计元素出现的次数,不存在返回0.sort() #原地排序numbers.sort() #升序numbers.sort(reverse=True) #降序#自定义排序.sort(key=len) #按长度排序.sort(key=lambda x: x[-1]) #key用来指定排序依据,按最后一个字母排序#lambda x: x[-1]:这是一个匿名函数 x:代表列表里的每一个元素 x[-1]:代表每个元素的最后一个元素#反转列表.reverse()
#拼接(+1)#重复(*)#成员判断(in,not in)has_apple = 'apple' in fruits#比较运算:逐个比较
#1.直接遍历for name in names: print(name)#2.索引遍历for i in range(len(names)): print(f"{i}:{names[i]}")#3.enumerate遍历(常用)for index, name in enumerate(names): print(f"{idex}:{name}")#4.同时遍历多个列表for name,score in zip(names,scores): print(f"{name}:{score}")#5.反向遍历for name in reversed(names): print(name)#6.排序遍历for name in sorted(names): print(name)
len() #列表长度max() #最大值min() #最小值sorted() #排序any() #至少一个True返回Trueall() #全部True才返回Ture
copy.copy() #浅拷贝:改外层不影响原对象,改内层会影响原对象copy.deepcopy() #深拷贝:改什么都不影响原对象