Python 列表推导式、矩阵、格式化输出
列表推导式
列表推导式提供了从列表、元组创建列表的简单途径。语法:
[表达式 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,2,3,4] list2=[x*2 for x in list1 if x>2] #if限定范围
print(list2) #[6, 8]
list1=[1,3,5,7] #使用元组也行,得到的仍然是列表
list2=[2,4,6,8] list2=[x*y for x in list1 for y in list2 ] #可使用多个for语句
print(list2) #[2, 4, 6, 8, 6, 12, 18, 24, 10, 20, 30, 40, 14, 28, 42, 56]
矩阵
矩阵可使用列表\元组的嵌套来实现。
matrix=[[1,2,3],[4,5,6],[7,8,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, 3], [4, 5, 6], [7, 8, 9], [10, 11, 12]] del matrix[0] #删除第一行
print(matrix) #[[4, 5, 6], [7, 8, 9], [10, 11, 12]] matrix.clear() #清空矩阵
print(matrix) #[] del matrix #删除整个矩阵 #可使用循环来遍历矩阵
格式化输出
1、常用的输出方式
print("Download the file",end=" done\n") # 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 = " done\n")
"""
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) #
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,age,score)) #我是张三,今年12岁,成绩99分
print("我是{},今年{}岁,成绩{}分".format(name,age,score)) #我是张三,今年12岁,成绩99分 {index}中的index可以缺省,缺省时默认依次为0,1,2,3....
print("我是{0},今年{1}岁,成绩{2:.1f}分".format(name,age,score)) #我是张三,今年12岁,成绩99.0分 可以指定具体格式
print("我是{},今年{}岁,成绩{:.1f}分".format(name,age,score)) #我是张三,今年12岁,成绩99.0分
Python 列表推导式、矩阵、格式化输出的更多相关文章
- Python列表推导式和嵌套的列表推导式
列表推导式提供了一个更简单的创建列表的方法.常见的用法是把某种操作应用于序列或可迭代对象的每个元素上,然后使用其结果来创建列表,或者通过满足某些特定条件元素来创建子序列. 例如,假设我们想创建一个平方 ...
- python 列表推导式 - python基础入门(16)
截止到目前为止,python基础内容已经学习了50%左右,在学习编程过程中,我们不仅要学习python语法,同时也需要学习如何把自己代码写的更美观,效率更高. 一.什么是推导式 推导式是从一个或者多个 ...
- python列表推导式详解
推导式是Python中很强大的.很受欢迎的特性,具有语言简洁,简化代码,速度快等优点.推导式包括:1.列表推导式2.字典推导式3.集合推导式4.嵌套列表推导式注意: 字典和集合推导是最近才加入到Pyt ...
- python列表推导式详解 列表推导式详解 字典推导式 详解 集合推导式详解 嵌套列表推导式详解
推导式是Python中很强大的.很受欢迎的特性,具有语言简洁,简化代码,速度快等优点.推导式包括:1.列表推导式2.字典推导式3.集合推导式4.嵌套列表推导式注意: 字典和集合推导是最近才加入到Pyt ...
- python 列表推导式
squares = [x**2 for x in range(10)] 相当于squares = map(lambda x: x**2, range(10)),但是更简洁和易读.傻逼才会用最古老的fo ...
- python(列表推导式和生成器表达式)
从母鸡下蛋的故事讲起 老母鸡 = ('鸡蛋%s'%i for i in range(10)) print(老母鸡) for 蛋 in 老母鸡: print(蛋) g = (i*i for i in r ...
- python列表推导式(扫盲)
1) 简单了解: 所谓的列表推导式,就是指的轻量级循环创建列表. 格式: 列表推导式的常见形式: my_list = [ item for item in iterable] my_list: 列表名 ...
- 迭代列表不要For循环,这是Python列表推导式最基本的概念
如果你还在使用 For 循环迭代列表,那么你需要了解了解列表推导式,看看它的基本概念都是什么. 列表解析式(List comprehension)或者称为列表推导式,是 Python 中非常强大和优雅 ...
- Python列表推导式玩法
前言 列表做为python的基础,是必须学习的语法之一.一些基础的之前已经是反复温习和使用了,今天我们来学习它的进阶版-->列表推导式. 列表推导式: 优点:是将所有的值一次性加载到内存中,相比 ...
随机推荐
- React和Redux的开发经验之谈
1.显示控制用state,共享数据用redux,觉得可以不用redux的就不要用 2.表单项集中的地方,推荐用高阶组件,单个表单项,不推荐用高阶组件 3.涉及对服务数据的处理,在redux的model ...
- Spring Cloud微服务安全实战_3-2_第一个API及注入攻击防护
1,本节主要讲了sql注入防范,如果使用mybatis,需要注意mapper.xml里面$会造成sql注入风险. 第一个 api 代码:https://github.com/lhy1234/sprin ...
- contest3 CF994 div2 ooxxx? oooox? ooooo?
题意 div2 C (x)(o) 在一个平面上, 给一个水平的正方形和一个\(45^.斜\)的正方形 求是否相交(共点也算), 坐标正负\(100\)以内 div2 D (x)(o) \(A,B\)两 ...
- [Python] 递归返回值 为 None 的问题
递归返回值 为 None 的问题 解决办法: 在递归调用下一个 递归 函数前面,一定要加上 return,否则就会返回 None 如红色 所处的return: def getAllCityUrl(ur ...
- [RN] React Native 权限申请 react-native-permissions
React Native 权限申请 react-native-permissions 一.安装 npm i -S react-native-permissions link: react-native ...
- vue中异步请求渲染问题(swiper不轮播)(在开发过程中遇到过什么问题、踩过的坑)
问题描述: 用vue封装一个swiper组件的时候,发现轮播图不能轮播了. 原因: 异步请求的时间远大于生命周期执行的时间,mounted初始化DOM时数据未返回,渲染数据是空数组,导致轮播图的容器层 ...
- 近年NOI题目总结
NOI2015D1T1 题目大意:$T$ 组数据.在一个程序中有无数个变量 $x_i$.现在有 $n$ 条限制,形如 $x_i=x_j$ 或者 $x_i\ne x_j$.(对于每个限制 $i,j$ 给 ...
- 【BigData】Java基础_类和对象的基本使用
1.需求描述 ①定义一个学生类,然后根据该类创建3个具体的学生对象 类中包含信息:学生姓名.学号.年龄.性别.所在地址 ②将这三个学生对象存入到数组中 ③然后将数组对象按照学生的年龄倒序排序 2.代码 ...
- win10 将任意文件固定到开始屏幕(最佳办法)
1.情景展示 以.bat文件文件为例,想将其固定到开始屏幕上,但是选中-->右键,却没有固定到开始屏幕选项,如何将其固定到开始屏幕上呢? 2.解决方案 选中你要固定到开始屏幕上的文件--&g ...
- 2018-2019-2 网络对抗技术 20165230 Exp8 Web基础
目录 实验目的 实验内容 实验步骤 (一)Web前端HTML Apache HTML编程 (二) Web前端javascipt 基础知识理解 JavaScript编程 (三)Web后端:MySQL基础 ...