python元组和列表的联系_Python 列表和元组
1、数据结构:通过某种方式组织在一起的数据元素的集合
2、在Python中,最基本的数据结构是序列(sequence),最后一个元素标记为-1,倒数第二个元素为-2,第一个元素位于最开始,索引为0
3、Python包含6种内建的序列,最常用的两种类型:列表和元组.其他的内建序列类型有字符串、Unicode字符串、buffer对象和xrange对象
4、列表和元组的主要区别在于,列表可以修改,元组则不能
months =['January','February','March','April','May','June','July','August','September','October','November','December']
endings= ['st','nd','rd'] + 17*['th']\+ ['st','nd','rd'] + 7*['th']\+ ['st']
year= raw_input('Year:')
month= raw_input('Month(1-12):')
day= raw_input('Day(1-31):')
month_number=int(month)
day_number=int(day)
month_name= months[month_number-1]
ordinal= day + endings[day_number-1]print month_name + ' ' + ordinal + '.' + year
索引示例
5、使用分片操作来访问一定范围内的元素。分片通过冒号相隔两个索引.第一个索引的元素包含在分片内,而第二个则不包含在分片内
numbers = [1,2,3,4,5,6,7,8,9,10]print numbers[3:6]#[4,5,6]
print numbers[-3:]#[8,9,10]
url= raw_input('Please enter the URL:')
domain= url[11:-4]print "Domain name:" +domain#Please enter the URL: http://www.python.org#Domain name: python
分片示例
6、进行分片的时候,还有一个隐式参数步长(step length),如果步长为负数,即从右到左提取
7、序列相加,两种相同类型的序列才能进行连接操作
8、乘法: 用数字x乘以一个序列生成新的序列,在新的序列中,原来的序列将被重复x次
#创建一个占有十个元素空间
sequence = [None] * 10
printsequence#[None, None, None, None, None, None, None, None, None, None]
nums= [1,2,3]print nums*4
#[1, 2, 3, 1, 2, 3, 1, 2, 3, 1, 2, 3]
乘法示例
9、为了检查一个值是否在序列中,使用in运算符.然后返回相应的值:条件为真返回Ture,条件为假返回False
permissions = 'rw'
print 'r' inpermissionsprint 'e' inpermissions#True#False
users= ['mlh', 'foo', 'bar']
you_name_is_exist= raw_input('Enter your user name:') inusersprintyou_name_is_exist#Enter your user name: 45#False
subject= '$$$ Get rich now!! $$$'
print '$$' insubject#True
#检查用户名和PIN码
database =[
['albert', '1234'],
['dilbert','4242'],
['smith', '7524'],
['jones', '9843']
]
username= raw_input('User Name:')
pin= raw_input('PIN code:')if [username, pin] in database: print 'Access granted'
#User Name: smith#PIN code: 7524#Access granted
View Code
10、内建函数len、min和max。len函数返回序列中包含元素的数量,min函数和max函数则分别返回序列中最大和最小的元素
#元素赋值
x = [1,1,1]
x[1] = 2
printx#[1, 2, 1]
#删除元素
del x[2]printx#[1, 2]
#分片赋值
name = list('Perl')
name[2:] = list('ar')printname#['P', 'e', 'a', 'r']#分片赋值是将原序列不等长的序列分片替换
numbers= [1,5,6]
numbers[2:3] = [2,3,4]printnumbers#[1, 5, 2, 3, 4]
#利用分片赋值删除元素
nums = [1,2,3,4,5]
nums[1:4] =[]printnums#[1, 5]
分片赋值
11、列表方法
调用: 对象.方法(参数)
append方法用于在列表末尾追加新的对象(直接修改原来的列表)
count方法统计某个元素在列表中出现的次数
extend方法可以在列表的末尾一次性追加另一个序列中的值
index方法用于从列表中找出某个值第一个匹配项的索引位置
insert方法用于将对象插入到列表中
pop方法会移除列表中的一个元素(默认是最后一个),并返回该元素的值.pop方法是唯一一个既能修改列表又返回元素值(处理None)的列表方法
remove方法用于移除列表中某个值的第一个匹配项
reverse方法将列表中的元素反向存放
sort方法用于在原位置对列表进行排序.sorted会返回已排序的列表副本
aname = [1,2,3]
aname.append(4)printaname#[1, 2, 3, 4]
print ['to','at','or','on','to','in','to'].count('to')#3
a= [1,2,3]
b= [4,5,6]print a+b## [1, 2, 3, 4, 5, 6]
a.extend(b)printa#[1, 2, 3, 4, 5, 6]
knight= ['we','are','the','knights','who','say','ni']print knight.index('who')#4
numbers= [1,2,3,5,6,7]
numbers.insert(3,'four')printnumbers#[1, 2, 3, 'four', 5, 6, 7]
x= [1,2,3,4,5]printx.pop()#5
y= ['to','be','or','on']
y.remove('to')printy#['be', 'or', 'on']
z= [1,3,2,5,4]
z.reverse()printz#[4, 5, 2, 3, 1]
m= [4,6,2,5,7,1,3,0,9]printsorted(m)printm#[0, 1, 2, 3, 4, 5, 6, 7, 9]#[4, 6, 2, 5, 7, 1, 3, 0, 9]
m.sort()printm#[0, 1, 2, 3, 4, 5, 6, 7, 9]
#len作为键函数(按元素长度排序)
n = ['aardvark','abalone','acde','add','aerate']
n.sort(key=len)printn#['add', 'acde', 'aerate', 'abalone', 'aardvark']
列表方法
12、元组与列表一样,也是一种序列.唯一的不同是元组不能修改.
创建元组的语法很简单:如果你用逗号分隔了一些值,那么你就自动创建了元组
tuple函数的功能与list函数基本上是一样的:以一个序列作为参数并把它转换为元组
元组的分片还是元组,列表的分片还是列表
元组是不可替代的:元组可以在映射(和集合的成员)中当作键使用,而列表则不行
#元组中的元素值是不允许修改的,但是我们可以对元组进行连接组合
m = (1,2,3)
n= (4,)print m+n#(1, 2, 3, 4)
#创建空元组
tup =()#元组只包含一个元素时,需要在元素后面添加逗号
tup1 = (50,)print 3*(40+2)#126
print 3*(40+2,)#(42, 42, 42)
print tuple('abcd')#('a', 'b', 'c', 'd')
元组示例
13、tuple和list不是真正的函数,而是一种类型
14、列表的冒号操作
## 列表操作
list1 = [9,8,7,6,5,4,3,2,1,0]print(list1[0:])#[9, 8, 7, 6, 5, 4, 3, 2, 1, 0]
print(list1[1:])#[8, 7, 6, 5, 4, 3, 2, 1, 0]
print(list1[:-1])#[9, 8, 7, 6, 5, 4, 3, 2, 1]
print(list1[3:-3])#[6, 5, 4, 3]
print(list1[::2])#[9, 7, 5, 3, 1]
print(list1[2::])#[7, 6, 5, 4, 3, 2, 1, 0]#一个冒号,两个参数表示起始位置,默认间隔为1#两个冒号,前两个参数表示起始位置,最后一个参数表示间隔
print(list1[::3])#[9, 6, 3, 0]
print(list1[::-1])#[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
列表冒号
python元组和列表的联系_Python 列表和元组相关推荐
- python处理列表中字典_Python 列表、元组、字典及集合操作详解
一.列表 列表是Python中最基本的数据结构,是最常用的Python数据类型,列表的数据项不需要具有相同的类型 列表是一种有序的集合,可以随时添加和删除其中的元素 列表的索引从0开始 1.创建列表 ...
- python 元组 列表 字典区别_Python列表、元组、字典、集合、字符串的异同总结
1.数据类型 列表.元组.字典.集合.字符串均属于python3的标准数据类型. 字符串和元组属于不可变数据,即创建后不可修改. 列表.字典.集合属于可变数据,即创建后可以修改元素. 2.创建有元素的 ...
- python列表字典操作_Python 列表(list)、字典(dict)、字符串(string)常用基本操作小结...
创建列表 sample_list = ['a',1,('a','b')] Python 列表操作 sample_list = ['a','b',0,1,3] 得到列表中的某一个值 value_star ...
- python列表求平均数_python 列表平均值
广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 我有一个列表:类似: data = , , , ] 我想把这个算出来... 我想 ...
- python列表比较方法_python列表常用方法
list是一个类,用中括号括上,逗号分隔,元素可以是数字,字符,字符串,也可以是嵌套列表,布尔类型. 1.通过索引取值 li=[1,12,9,'age',['wangtianning',[19,'10 ...
- python列表反向排序_Python 列表排序方法reverse、sort、sorted详解
python语言中的列表排序方法有三个:reverse反转/倒序排序.sort正序排序.sorted可以获取排序后的列表.在更高级列表排序中,后两中方法还可以加入条件参数进行排序. reverse() ...
- python列表的操作方法_Python 列表(List)操作方法-经管之家官网!
本文主要介绍了Python中列表(List)的详解操作方法,包含创建.访问.更新.删除.其它操作等, 下列表是Python中最基本的数据结构,列表是最常用的Python数据类型,列表的数据项不需要具有 ...
- python列表浅复制_Python列表深浅复制详解
转自:https://www.cnblogs.com/blaomao/p/7239203.html 在文章<Python 数据类型>里边介绍了列表的用法,其中列表有个 copy() 方法, ...
- python列表的加法_Python列表加法理解
我是Python新手,不能将函数转换为列表理解.理解涉及value函数,其包含类如下:class Card(object): # Lists containing valid candidates f ...
最新文章
- 深度学习(十一)——Winograd(1)
- 如何通过组件化提高开发效率?
- Wireshark之捕获过滤器
- tcpdf中文解决方案
- 强化学习算法面试问题 解答
- 微信公众号开发之微信支付开发
- office2019安装D盘_office2016or2019安装在D盘的方法-可收藏备用
- 华为android9使用外置存储卡,华为mate9如何删除内存卡文件?华为手机清理内存教程...
- Unity ProjectTiny用纯ECS写个跃动的小球
- 何恺明的ResNet论文,被引量刚刚突破10万大关
- bootstrap 页面垂直居中_bootstrap4如何实现div的水平居中以及垂直居中
- 【python学习】自定义三维向量类 加减乘除查看值和长度
- 一周学python系列(7)——面向对象
- java的抽象方法和抽象类
- 2020年全球权威机器人评选RBR50放榜:中国仅一家公司入选,大疆落榜
- android淡入淡出动画循环,Android activity动画(淡入淡出)
- C#设计模式——组合模式(Composite Pattern)
- 《Android Studio 开发实战从零基础到App上线》笔记1
- Eclipse开发的家庭理财通APP
- “网站正在建设”H5模板