列表用法补充

列表属于序列中的一种,序列包括(列表,元组,字符串,buffer对象,xrange对象)

列表跟元组唯一的区别就是:列表可以修改,元组不能被修改(元组不可修改的属性决定了元组可以在映射中当作键使用;可以作为很多内建函数和方法的返回值存在)

之前在python基础篇中有总结过列表的基本用法,在这里做一下列表用法的补充:

a=[‘tina fei‘,18]
b=[‘tom li‘,22]
c=[a,b]
print(c)
print(c[0])
执行结果:
[[‘tina fei‘, 18], [‘tom li‘, 22]]
[‘tina fei‘, 18]
phoneNumbers = [‘213123‘,‘542113‘,‘543231‘,‘974723‘]
names=[‘Ada‘, ‘Bill‘, ‘Candy‘, ‘David‘]
a=phoneNumbers[names.index(‘Bill‘)]
print(a)#542113

切片用法的案例补充:

#切片的用法补充
data=[1,2,3,4,5,6,7,8,9,10]
print(data[-3:-1])
print(data[-3:])
print(data[::2])##从第三个开始是对步长的练习print(data[1::2])
print(data[::-1])
print(data[-1:-8:-1])
print(data[8:1:-1])

执行结果如下:
[8, 9]
[8, 9, 10]
[1, 3, 5, 7, 9]
[2, 4, 6, 8, 10]
[10, 9, 8, 7, 6, 5, 4, 3, 2, 1]
[10, 9, 8, 7, 6, 5, 4]
[9, 8, 7, 6, 5, 4, 3]

 分片赋值的用法:

data=[1,2,3,4,5,6,7,8,9,10]
data[0]=100#索引赋值
del(data[2])#删除元素
data[1:4]=list(‘tina‘)#分片赋值
print(data,len(data))#[100, ‘t‘, ‘i‘, ‘n‘, ‘a‘, 6, 7, 8, 9, 10] 10
data[-2:]=list(‘hahaha‘)#分片赋值时,原片与新片长度不同
print(data,len(data))#[100, ‘t‘, ‘i‘, ‘n‘, ‘a‘, 6, 7, 8, ‘h‘, ‘a‘, ‘h‘, ‘a‘, ‘h‘, ‘a‘] 14
data[0:0]=list(‘test‘)#分片赋值可以在指定位置插入新的元素
print(data,len(data))#[‘t‘, ‘e‘, ‘s‘, ‘t‘, 100, ‘t‘, ‘i‘, ‘n‘, ‘a‘, 6, 7, 8, ‘h‘, ‘a‘, ‘h‘, ‘a‘, ‘h‘, ‘a‘] 18
深浅拷贝中涉及到的列表分片:
x=list(‘12345‘)
y=x
x.reverse()
print(y)#[‘5‘, ‘4‘, ‘3‘, ‘2‘, ‘1‘]这里的y也跟着改变了
#但是用分片的方法复制,x与Y是相互独立的,修改x,不会影响Y
y=x[:]
y.sort()
print(x,y)#[‘5‘, ‘4‘, ‘3‘, ‘2‘, ‘1‘] [‘1‘, ‘2‘, ‘3‘, ‘4‘, ‘5‘]

序列与运算符相结合的用法:

1、加法:
first=[1,2,3]
second=[2,3,4]
print(first+second)#[1, 2, 3, 2, 3, 4]
2、乘法:
first=[1,2,3]
print(first*3)
print([None]*2)
执行结果:
[1, 2, 3, 1, 2, 3, 1, 2, 3]
[None, None]

just for fun:打印盒子的案例(练习序列与运算符的用法)

mystr=input(‘input any string follow your heart:‘)
strlen=len(mystr)
linestart=20
print(‘ ‘*linestart+‘+‘+‘-‘*strlen+‘+‘)
print(‘ ‘*linestart+‘|‘+‘ ‘*strlen+‘|‘)
print(‘ ‘*linestart+‘|‘+mystr+‘|‘)
print(‘ ‘*linestart+‘|‘+‘ ‘*strlen+‘|‘)
print(‘ ‘*linestart+‘+‘+‘-‘*strlen+‘+‘)
执行结果如下:
input any string follow your heart:I am falling in love with tina!
                    +-------------------------------+
                    |                               |
                    |I am falling in love with tina!|
                    |                               |
                    +-------------------------------+
时间: 2024-10-26 00:56:47

列表用法补充的相关文章

对话框控件 MessageBox.Show()用法补充 打开新窗体的3中模式

(一)对话框控件 1.fontcolor 字体设置 属性:showcolor 可以调节字体颜色 showApply 控制显示应用按钮 例:设置一个文本框,点击按钮,文本框中的颜色字体发生改变 DialogResult dr = fontDialog1.ShowDialog(); if (dr == DialogResult.OK) { //设置文本框中的字体属性 richTextBox1.Font = fontDialog1.Font; //设置文本框中字体的颜色 richTextBox1.Fo

setfacl权限访问控制列表用法

Linux系统权限按照u-文件所有者权限,g-文件所有者组权限,o-其他人权限进行归类:这种区分方式明显不够精确,比如 zhangsan 属于其他人群体,某天他需要临时往系统的A文件里写入字符串:这个A文件对于其他人群体只有读权限没有写权限,现在需要为 zhangsan 临时开放 "w"权限.使用setfacl命令:set'fa'c'le现在大家看到了:在权限列表那一项后面有一个"+",这个标志代表有扩展权限:有意思的是:我明明是给zhangsan附加了写权限:在这

python面向对象之property用法补充(getter,setter,deleter)

用法一: class Foo: @property def AAA(self): print('get的时候运行我啊') @AAA.setter def AAA(self,value): print('set的时候运行我啊') @AAA.deleter def AAA(self): print('delete的时候运行我啊') #只有在属性AAA定义property后才能定义AAA.setter,AAA.deleter f1=Foo() f1.AAA f1.AAA='aaa' del f1.AA

rabbitmq简单用法补充

看过网上太多的例子,照着步骤,可以实现简单的发消息,接收消息.一般是没有设定任何条件,如果想设置自己的消息通道,还是要设置一些东西! http://localhost:15672是rabbitmq的服务器图形化界面,首先用guest账号登录进去 切换到Admin大tab,然后add user,填写自己的信息,只需username和password 右上角有virtual host,新创建一个virtual host,只需name 创建成功,就可以在列表中看到你自己创建的virtual host

列表用法

1 __author__ = 'ZZG' 2 3 names = ["zhangyang", "guyun", "xiangpeng", "xuliangchen"] 4 names.append("Lixian")#增加 5 names.insert(1,"chengronghua")#插入 6 names.insert(3,"xinzhiyu") 7 names[

python 字典|列表用法

1.列表 1 s=['1','2','3'] // 定义列表s 2 3 print(s) //打印列表s 4 5 print(len(s)) //打印列表长度 len()函数可用作测量长度 具体功能可以分别代入试一试 6 7 print(type(s)) //打印列表的类型 8 9 print(s[3]) // 打印列表s的第3个元素 10 11 print(s[-2]) // 打印列表s中倒数第二个元素 12 13 print(s[0:3]) // 打印列表中 0 1 2元素 14 15 pr

Python 爬取 北京市政府首都之窗信件列表-[后续补充]

日期:2020.01.23 博客期:131 星期四 如果想要看到前面的铺垫,请看第130期博客! [本博客的代码如若要使用,请在下方评论区留言,之后再用(就是跟我说一声)] 我试着改写了一下爬虫脚本,试着运行了一下,第一次卡在了第27页,因为第27页有那个“投诉”类型是我没有料到的!出于对这个问题的解决,我重新写了代码,新的类和上一个总体类的区别有以下几点: 1.因为要使用js调取下一页的数据,所以就去网站上下载了FireFox的驱动 安装参考博客:https://www.cnblogs.com

【JSP】<meta>标签用法

转载自:http://blog.sina.com.cn/s/blog_65c74cce0102v39z.html  非常感谢这位博主,急着用,改日再细细品味重新整理这篇博文. http-equiv META标签分两大部分:HTTP标题信息(HTTP-EQUIV)和页面描述信息(NAME). ★HTTP-EQUIV HTTP-EQUIV类似于HTTP的头部协议,它回应给浏览器一些有用的信息,以帮助正确和精确地显示网页内容.常用的HTTP-EQUIV类型有: 1.Content-Type和Conte

python_day3列表、元组、字典

一.列表 定义:[ ] 内以逗号分隔,按照索引,存放各种数据类型,每个位置代表一个元素 特性: > 可存放多个值 > 可修改指定索引位置对应的值,可变 > 按照从左到右的顺序定义列表元素,下标从0开始顺序访问,有序 1.1列表创建 list 表示列表类型 list1=[ ]   #空列表 list2=[1,2,3,4] list3=['a','b','c'] #有元素列表 1.3 列表拼接 2.列表常用的操作 索引(索引取值) 第一位元素的索引号对应的是0,以此类推 索引号-1 ,表示取