鱼C论坛

 找回密码
 立即注册
查看: 848|回复: 0

[技术交流] Python小知识[31-40]

[复制链接]
发表于 2018-7-24 18:40:57 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
本帖最后由 千云天歌 于 2018-7-24 18:42 编辑

31.        搭配for循环使用的计数BIF——range()
语法:range([start, ]stop[, step = 1])
它产生从start到stop-1默认步进为1的数字列表,只有stop参数时则产生0到stop-1的数字列表。Step时步进数
1.png

32.        continue与break用法和C语言C++语言相同

33.        python中的列表可以将不同属性的数据放在一起,列表分为普通列表,混合列表,和空列表
2.png
当需要向列表中添加单个元素时可用append()函数
3.png
添加多个元素时,可用extend()函数,但要注意的是,extend()参数是列表
4.png
要在特定位置插入元素,则利用insert()函数,它有两个参数,第一个插入位置(注意,顺序索引是从0开始),第二个参数是插入的元素
5.png

34.        一些循环体提高效率的方法
i = 0
string = 'ILoveFishC.com'
while i < len(string)):
print(i)
i += 1
每次执行循环时都要调用len()函数,效率低下,更改为
i = 0
string = 'ILoveFishC.com'
length = len(string)
while i < length:
            print(i)
            i += 1  

35.        有红、黄、蓝三种颜色的求,其中红球 3 个,黄球 3 个,绿球 6 个。先将这 12 个球混合放在一个盒子中,从中任意摸出 8 个球,编程计算摸出球的各种颜色搭配。
print('red\tyellow\tgreen')
for red in range(0, 4):
for yellow in range(0, 4):
for green in range(2, 7):
if red + yellow + green == 8:
# 注意,下边不是字符串拼接,因此不用“+”哦~
print(red, '\t', yellow, '\t', green)
range(2, 7) 是产生 [2, 3, 4, 5, 6] 这 5 个数,绿球不能是 1 个,因为如果绿球是 1 个的话,红球 + 黄球需要有 7 个才能符合题意,而红球和黄球每种只有 3 个,因此是 range(2, 7)

36.        向列表中添加元素可以使用append()、extend()、insert(),他们的区别如下:
append()参数只能是一个,只可向扩展列表中增加一个元素,即便几个元素放在列表中进行添加也不是几个元素加入到想要增加元素的列表中,而是将作为参数的列表作为一个元素添加到想要扩展的列表中
extend()参数也是只有一个,可以向扩展列表中增加多个元素,方法是将这些元素放在一个列表中,让这个列表作为extend()的参数
insert()参数有两个,第一个参数是要将增加的元素放在需扩展的列表的哪个位置(位置序列从0开始),第二个参数同extend()的参数

37.        从列表删除元素:
三种方法:
1.调用列表方法remove(),参数为列表中元素的名字
>>> member.remove(‘怡静’)
2.语句del,del可以删除单个列表元素也可以将整个列表从内存中删除
>>> del member[1]
>>> del member
3.调用列表方法pop(),它将列表中最后一个元素删除,并加以显示,它可以给变量赋值,他也可以有参数,参数是列表元素的索引(下标,从0开始的)
>>> member.pop()
‘Crazy迷恋’
>>> name = member.pop()
>>> member.pop(0)

38.        列表的切片处理
有时需要提取出列表中的好几个元素,怎么办?利用列表切片!
6.png
切片操作不包含[ ]里 : 后面的索引下标所指元素,member[0]与member[0:1]不一样,前者是单个元素,后者是列表
注意:切片处理可以有步进,默认步进为1,可以更改,例如:
>>> member[0 : 3 : 2]  #其中最后一个数字2是步进长度

39.        列表切片时,支持负数索引
7.png
8.png
正常索引是从左到右索引,负数索引是从右到左。同样是不包含冒号后面的截止索引号所指的元素

40.        如果你每次想从列表的末尾取出一个元素,并将这个元素插入到列表的最前边,你会怎么做?
>>> list1.insert(0, list1.pop())

本帖被以下淘专辑推荐:

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-3-29 15:32

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表