Python 列表推导式、矩阵、格式化输出
发布时间:2020-12-20 12:48:44 所属栏目:Python 来源:网络整理
导读:? 列表推导式 列表推导式提供了从列表、元组创建列表的简单途径。语法:?? [表达式 for语句 if语句] 创建并返回一个列表。if语句可
?列表推导式列表推导式提供了从列表、元组创建列表的简单途径。语法:?? [表达式 for语句 if语句] 创建并返回一个列表。if语句可选。 ? 示例: list1=[1,2,3,4] #使用元组也行 list2=[x*2 for x in list1] print(list2) #[2,4,6,8] list3=[x*2+1 for x in list1] print(list3) #[3,5,7,9] ? list1=[1,4] list2=[x*2 for x in list1 if x>2] #if限定范围 print(list2) #[6,8] ? list1=[1,7] #使用元组也行,得到的仍然是列表 list2=[2,8] list2=[x*y for x in list1 for y in list2 ] #可使用多个for语句 print(list2) #[2,8,12,18,24,10,20,30,40,14,28,42,56] ? ? ? ? 矩阵矩阵可使用列表元组的嵌套来实现。 matrix=[[1,3],[4,6],[7,9],[10,11,12]] #一个3*4的矩阵 """ 1 2 3 4 5 6 7 8 9 10 11 12 """ del matrix[0][0] #删除第一行的第一个元素 print(matrix) #[[2,12]] del matrix[0] #删除第一行 print(matrix) #[[4,12]] matrix.clear() #清空矩阵 print(matrix) #[] del matrix #删除整个矩阵 #可使用循环来遍历矩阵 ? ? ? ? 格式化输出1、常用的输出方式print("Download the file",end=" donen") # Unpack the file done """ 以指定值结尾,缺省end时默认为n,所以缺省end时会自动换行。 """ print("*"*50) #分隔线效果 list=["Download the file","Unpack the file","Open the file"] for x in list: print(x,end = " donen") """ Download the file done Unpack the file done Open the file done """ ? ? 2、转换为字符串str1=str(1) #转换为字符串 print(type(str1)) #<class ‘str‘> a=10 str2=str(a) #转换为字符串,a本身不变 print(str2) #10 print(type(str2)) #<class ‘str‘> print(type(a)) #<class ‘int‘> ? ? 3、对齐方式str="hello" print(str.ljust(20," ")) #左对齐,不足20个字符右边填充空格(凑足20个字符) print(str.rjust(20," ")) #右对齐,不足20个字符时,左边填充空格 print(str.center(20," ")) #居中对齐,不足20个字符时,两端填充空格 ? ? 4、格式化输出旧版本的格式化输出: name="张三" age=12 score=99 print("%s今年%d岁,成绩%.1f分"%(name,age,score)) #张三今年12岁,成绩99.0分 """ print("格式串"%(对应的值)) 有多个值时,值要放在()中。如果只有一个值,可以缺省(): print("我是%s"%name) """ ? ? 新版本的格式化输出: name="张三" age=12 score=99 print("我是{0},今年{1}岁,成绩{2}分".format(name,score)) #我是张三,今年12岁,成绩99分 print("我是{},今年{}岁,成绩{}分".format(name,score)) #我是张三,今年12岁,成绩99分 {index}中的index可以缺省,缺省时默认依次为0,1,3.... print("我是{0},今年{1}岁,成绩{2:.1f}分".format(name,score)) #我是张三,今年12岁,成绩99.0分 可以指定具体格式 print("我是{},今年{}岁,成绩{:.1f}分".format(name,score)) #我是张三,今年12岁,成绩99.0分 (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |