网站首页 > 技术文章 正文
大家好,这里是温文默克的学习笔记—Python篇。今天为大家分享的是笔者在学习《python编程快速上手 让繁琐工作自动化》时的列表章节时的一个例子。在分享之前,笔者首先为简单的说一下列表。
“列表”可以说是一个值,它包含多个字构成的序列,既可以保存在变量中,也可以传递给函数,像所有其他值一样。列表的所有元素放在一对中括号“[]”中,并使用逗号分隔开。一个列表中的数据类型各不相同也没关系,可以同时分别为整数、实数、字符串等基本类型,甚至是列表、字典以及其他自定义类型的对象。
例如:['cat', 'bat', 'rat', 'elephant']或者[123, 'bat', ['rat', 'elephant'], 'elephant']
创建列表的方法也很简单,使用“=”直接将一个列表赋值给变量即可创建列表对象。例如:list1 = [],list2 = [1,2,3,4,5,6],又或是使用list()函数将元组、range对象、字符串或其他类型的可迭代对象类型的数据转换为列表。例如:list3 = list("Helloword") 将字符串 "hello" 转换成列表['H','e','l','l','o',‘w’,’o’,’r’,’’d]。
用下标就能够取得列表中的单个值。假定列表['cat', 'bat', 'rat', 'elephant']保存在名为 spam 的变量中。Python 代码spam[0]的值为'cat',spam[1]的值为'bat',依此类推。列表后面方括号内的整数被称为“下标”。不过需要注意的是列表中第一个值的下标是 0,第二个值的下标才是 1,第三个值的下标是 2,依此类推。下标只能是整数,不能是浮点值。列表也可以包含其他列表值。这些列表的列表中的值,可以通过多重下标来访问,比如:
此外, ?1 指的是列表中的最后一个下标,?2 指的是列表中倒数第二个下标,同理往下。下标可以从列表中取得单个值,而“切片”可以从列表中取得多个值。切片输入在一对方括号中,像下标一样,但它有两个冒号分隔的整数,例如spam[1:4]。在一个切片中,第一个整数是切片开始处的下标,第二个整数是切片结束处的下标,切片向上增长,直至第二个下标的值,但不包括它。
说道这里,相信对于列表大家已经有了一个简单的理解了。接下来就开始进行今天的分享——字符图网格。
这个例子是《python编程快速上手 让繁琐工作自动化》中列表章节的课后习题,要求如下:
要想解决这个问题,只需要进行两次的循环,打印出grid[0][0],然后grid[1][0],然后grid[2][0],以此类推。但这里在进行打印的时候需要注意,如果直接使用print()函数进行会发现,每打印一个数字就换一行,和我们想要的效果不同。
这其实是因为print()函数的”end”参数导致的,print()语法如下:
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
· objects -- 复数,表示可以一次输出多个对象。输出多个对象时,需要用 , 分隔。
· sep -- 用来间隔多个对象,默认值是一个空格。
· end -- 用来设定以什么结尾。默认值是换行符 \n,我们可以换成其他字符串。
· file -- 要写入的文件对象。
· flush -- 输出是否被缓存通常决定于 file,但如果 flush 关键字参数为 True,流会被强制刷新。
因此想要实现题目的效果,我们只需要在第二层循环(最里层循环)进行打印时将print()函数的“end”参数设置成空白即可。但这还不算完,因为只是这样的话所有图形都会在一排(可以自己试一下),因此在第一层循环时,我们也要使用一个print()函数进行换行。这样就可以了。
chang = len(grid)
kuan = len(grid[1])
for i in range(kuan):
for j in range(chang):
print(grid[j][i],end='')
print()
本次分享的内容很简单,其实就是运用了双重循环,列表的基本知识以及print()函数的一些知识。《python编程快速上手 让繁琐工作自动化》这本书的知识讲解,笔者认为也是比较清晰易懂的,在这里留下电子版的链接,希望可以对大家有所帮助。
链接:https://pan.baidu.com/s/19f3gJDLHXkwqYCWllOAHLw
猜你喜欢
- 2024-10-01 利用神经网络模型检测摄像头上的可疑行为
- 2024-10-01 使用神经网络的自动化特征工程(神经网络的特点及使用场景)
- 2024-10-01 Python基础学习必备的8个最常用的内置函数
- 2024-10-01 利用Click和argparse给你Python程序构建一个优雅的命令行界面
- 2024-10-01 langchain中的LLM模型使用介绍(llvm 分析)
- 2024-10-01 学习Python内置函数(range)来打印数学乘法表
- 2024-10-01 Python 100天 15:print("hello world")茴香豆的写法
- 2024-10-01 python3入门实例一:Hello World(python的hello world程序编写)
- 2024-10-01 python基础篇:讲讲python的内置函数一
- 2024-10-01 Python3中的print函数(python里的print函数)
- 最近发表
- 标签列表
-
- cmd/c (57)
- c++中::是什么意思 (57)
- sqlset (59)
- ps可以打开pdf格式吗 (58)
- phprequire_once (61)
- localstorage.removeitem (74)
- routermode (59)
- vector线程安全吗 (70)
- & (66)
- java (73)
- org.redisson (64)
- log.warn (60)
- cannotinstantiatethetype (62)
- js数组插入 (83)
- resttemplateokhttp (59)
- gormwherein (64)
- linux删除一个文件夹 (65)
- mac安装java (72)
- reader.onload (61)
- outofmemoryerror是什么意思 (64)
- flask文件上传 (63)
- eacces (67)
- 查看mysql是否启动 (70)
- java是值传递还是引用传递 (58)
- 无效的列索引 (74)