当前位置:   article > 正文

Python基础-列表(list)和元组(tuple)_python 元组 list

python 元组 list

Python包含6种内建的序列:列表,元组,字符串,Unicode字符串,buffer对象,xrange对象,本文讨论列表和元组。

1.列表可以修改,元组则不能修改。

2.几乎在所有的情况下,列表都可以替代元组。

一、【列表(list)】

#1.语法:列表的各个元素用","分割,写在方括号中。

#如:用列表表示数据库中一个人的信息:姓名,性别,年龄

zhangsan=['张三','男',30]

lisi=['李四','女',28]

print(zhangsan)

print(type(zhangsan))

#输出:['张三', '男', 30]

#输出:<class 'list'>

#2.列表可以包含其他列表,如:

zhangsan=['张三','男',30]

lisi=['李四','女',28]

users=[zhangsan,lisi]

print(users)

#输出:[['张三', '男', 30], ['李四', '女', 28]]

#3.所有序列类型都可以进行:索引,分片,加,乘等操作,以及包含检查元素是否存在,序列长度,最大元素,最小元素等内建函数。

#3.1 索引:索引从0开始递增;使用负数索引时,会从右边计数,右边最后一个元素位置编号是-1,不是0

hello="HelloWorld"

print(hello[0]+"-"+hello[-1])

#输出:H-d

#3.2 分片:通过分片来访问一定范围内的元素,通过冒号相隔的两个索引来实现。注意:第1个索引的元素包含在分片内,第2个索引的元素不包含在分片内

hello="SayHelloWorld"

print(hello[3:8])  

#输出:Hello

#分片步长:默认步长为1,分片按照这个步长遍历序列元素,然后返回开始和结束点之间的所有元素。

print(hello[3:8:2])  

#输出:Hlo

#3.2 序列相加:两种相同类型的序列才能进行连接操作

a=[1,2,3]

b=[4,5,6]

print(a+b)

#输出:[1, 2, 3, 4, 5, 6]

#3.3 乘法:用数字x乘以一个序列,会得到将原序列元素重复x次的新序列

a=[1,2,3]

print(a*3)

#输出:[1, 2, 3, 1, 2, 3, 1, 2, 3]

#3.4 检查元素是否存在:使用in运算符

print("H" in hello)

#输出:True

zhangsan=['张三','男',30]

lisi=['李四','女',28]

users=[zhangsan,lisi]

print(['张三','男',30] in users)

#输出:True

#3.5 len(),max(),min() 函数

num=[100,34,678]

print(str(len(num))+"-"+str(max(num))+"-"+str(min(num)))

#输出:3-678-34

#4.列表方法(函数)

#4.1 list()函数:因为字符串不能像列表一样被修改,可以将字符串转换为列表

hello="HelloWorld"

hellolist=list(hello)

print(hellolist)

#输出:['H', 'e', 'l', 'l', 'o', 'W', 'o', 'r', 'l', 'd']

#反之,将列表组装成字符串,需要用到join函数

hello2="".join(['H', 'e', 'l', 'l', 'o', 'W', 'o', 'r', 'l', 'd'])

print(hello2)

#输出:HelloWorld

#4.2 del 删除元素

names=["zhangsan","lisi","wangwu"]

del names[1]

print(names)

#输出:['zhangsan', 'wangwu']

#4.3 append()方法:在列表末尾追加新元素

num=[1,2,3]

num.append(4)

print(num)

#输出:[1, 2, 3, 4]

#4.3 count()方法:统计某个元素在列表中出现的次数

chars=['A','B','A','C','A']

print(chars.count("A"))

#输出:3

#4.4 extend()方法:在列表的末尾一次性追加另一个序列中的多个值

#注意:extend()方法修改了被扩展的序列,而a+b是两个序列的连接操作,它返回的是一个新的序列

a=[1,2,3]

b=[4,5,6]

c=a+b

a.extend(b)

print(a)

print(c)

#输出:[1, 2, 3, 4, 5, 6]

#输出:[1, 2, 3, 4, 5, 6]

#4.5 index()方法:用于在列表中找出某个值第一个匹配的索引位置

chars=['A','B','A','C','A']

print(chars.index("C"))

#输出:3

#4.6 insert()方法:用于将对象插入到列表中

a=[1,2,3]

a.insert(1,"A")

print(a)

#输出:[1, 'A', 2, 3]

#4.7 pop()方法:会移除列表中的一个元素(默认是最后一个),并发返回该元素的值

#pop方法是唯一一个既能修改列表,又能返回元素值(除了None)的列表方法(类似栈,后进先出)

a=[1,2,3]

b=a.pop(1)

print(a)

print(b)

#输出:[1, 3]

#输出:2

#4.8 remove()方法:用于移除列表中某个位置的第一个匹配项

a=[1,2,3,'A','B','C']

a.remove('A')

print(a)

#输出:[1, 2, 3, 'B', 'C']

#4.9 reverse()方法:用于将列表中的元素反向存放

a=[1,2,3]

a.reverse()

print(a)

#输出:[3, 2, 1]

#4.9 sort()方法:用于在原位置对列表进行排序,改变原来的列表,而不是返回新的列表

a=[1,7,4,5,3,6,2,8]

b=['E','B','D','F','C','A']

a.sort()

b.sort()

print(a)

print(b)

#输出:[1, 2, 3, 4, 5, 6, 7, 8]

#输出:['A', 'B', 'C', 'D', 'E', 'F']

#如果只是想获取排序后的列表,而不是修改原列表,可以使用sorted()方法

a=[1,7,4,5,3,6,2,8]

b=['E','B','D','F','C','A']

print(sorted(a))

print(sorted(b))

#输出:[1, 2, 3, 4, 5, 6, 7, 8]

#输出:['A', 'B', 'C', 'D', 'E', 'F']

二、元组

#元组与列表一样,也是一种序列,唯一不同的是元组不能修改

#1.语法:通过()扩起来,内部用","隔开。

t=(1,2,3)

print(type(t))

#输出:<class 'tuple'>

#2.tuple()函数:与list()函数基本上是一样的,以一个序列为参数,并把它转换为元组,如果参数是元组,则原样返回。

a=[1,2,3]

b=tuple(a)

print(b)

#输出:(1, 2, 3)

完整代码

  1. #1.Python包含6种内建的序列:列表,元组,字符串,Unicode字符串,buffer对象,xrange对象,本文讨论列表和元组。
  2. #2.列表可以修改,元组则不能修改。
  3. #3.几乎在所有的情况下,列表都可以替代元组。
  4. #【列表】
  5. #1.语法:列表的各个元素用","分割,写在方括号中。,如:用列表表示数据库中一个人的信息:姓名,性别,年龄
  6. zhangsan=['张三','男',30]
  7. lisi=['李四','女',28]
  8. print(zhangsan)
  9. print(type(zhangsan))
  10. #输出:['张三', '男', 30]
  11. #输出:<class 'list'>
  12. #2.序列可以包含其他序列,如:
  13. zhangsan=['张三','男',30]
  14. lisi=['李四','女',28]
  15. users=[zhangsan,lisi]
  16. print(users)
  17. #输出:[['张三', '男', 30], ['李四', '女', 28]]
  18. #3.所有序列类型都可以进行:索引,分片,加,乘等操作,以及包含检查元素是否存在,序列长度,最大元素,最小元素等内建函数。
  19. #3.1 索引:索引从0开始递增,使用负数索引时,会从右边计数,右边最后一个元素位置编号是-1,不是0
  20. hello="HelloWorld"
  21. print(hello[0]+"-"+hello[-1])
  22. #输出:H-o
  23. #3.2 分片:通过分片来访问一定范围内的元素,通过冒号相隔的两个索引来实现。注意:第1个索引的元素包含在分片内,第2个索引的元素不包含在分片内
  24. hello="SayHelloWorld"
  25. print(hello[3:8])
  26. #输出:Hello
  27. #分片步长:默认步长为1,分片按照这个步长遍历序列元素,然后返回开始和结束点之间的所有元素。
  28. hello="SayHelloWorld"
  29. print(hello[3:8:2])
  30. #输出:Hlo
  31. #3.2 序列相加:两种相同类型的序列才能进行连接操作。
  32. a=[1,2,3]
  33. b=[4,5,6]
  34. print(a+b)
  35. #输出:[1, 2, 3, 4, 5, 6]
  36. #3.3 乘法:用数字x乘以一个序列,会得到将原序列元素重复x次的新序列
  37. a=[1,2,3]
  38. print(a*3)
  39. #输出:[1, 2, 3, 1, 2, 3, 1, 2, 3]
  40. #3.4 检查元素是否存在:使用in运算符
  41. print("H" in hello)
  42. #输出:True
  43. zhangsan=['张三','男',30]
  44. lisi=['李四','女',28]
  45. users=[zhangsan,lisi]
  46. print(['张三','男',30] in users)
  47. #输出:True
  48. #3.5 len,max,min 函数
  49. num=[100,34,678]
  50. print(str(len(num))+"-"+str(max(num))+"-"+str(min(num)))
  51. #输出:3-678-34
  52. #4.列表方法(函数)
  53. #4.1 list函数:因为字符串不能像列表一样被修改,可以将字符串转换为列表
  54. hello="HelloWorld"
  55. hellolist=list(hello)
  56. print(hellolist)
  57. #输出:['H', 'e', 'l', 'l', 'o', 'W', 'o', 'r', 'l', 'd']
  58. #反之,将列表组装成字符串,需要用到join函数
  59. hello2="".join(['H', 'e', 'l', 'l', 'o', 'W', 'o', 'r', 'l', 'd'])
  60. print(hello2)
  61. #输出:HelloWorld
  62. #4.2 删除元素
  63. names=["zhangsan","lisi","wangwu"]
  64. del names[1]
  65. print(names)
  66. #输出:['zhangsan', 'wangwu']
  67. #4.3 append()方法:在列表末尾追加新元素
  68. num=[1,2,3]
  69. num.append(4)
  70. print(num)
  71. #输出:[1, 2, 3, 4]
  72. #4.3 count()方法:统计某个元素在列表中出现的次数
  73. chars=['A','B','A','C','A']
  74. print(chars.count("A"))
  75. #输出:3
  76. #4.4 extend()方法:在列表的末尾一次性追加另一个序列中的多个值
  77. #注意:extend()方法修改了被扩展的序列,而a+b是两个序列的连接操作,它返回的是一个新的序列
  78. a=[1,2,3]
  79. b=[4,5,6]
  80. c=a+b
  81. a.extend(b)
  82. print(a)
  83. print(c)
  84. #输出:[1, 2, 3, 4, 5, 6]
  85. #输出:[1, 2, 3, 4, 5, 6]
  86. #4.5 index()方法:用于在列表中找出某个值第一个匹配的索引位置
  87. chars=['A','B','A','C','A']
  88. print(chars.index("C"))
  89. #输出:3
  90. #4.6 insert()方法:用于将对象插入到列表中
  91. a=[1,2,3]
  92. a.insert(1,"A")
  93. print(a)
  94. #输出:[1, 'A', 2, 3]
  95. #4.7 pop()方法:会移除列表中的一个元素(默认是最后一个),并发返回该元素的值
  96. #pop方法是唯一一个既能修改列表,又能返回元素值(除了None)的列表方法(类似栈,后进先出)
  97. a=[1,2,3]
  98. b=a.pop(1)
  99. print(a)
  100. print(b)
  101. #输出:[1, 3]
  102. #输出:2
  103. #4.8 remove()方法:用于移除列表中某个位置的第一个匹配项
  104. a=[1,2,3,'A','B','C']
  105. a.remove('A')
  106. print(a)
  107. #输出:[1, 2, 3, 'B', 'C']
  108. #4.9 reverse()方法:用于将列表中的元素反向存放
  109. a=[1,2,3]
  110. a.reverse()
  111. print(a)
  112. #输出:[3, 2, 1]
  113. #4.9 sort()方法:用于在原位置对列表进行排序,改变原来的列表,而不是返回新的列表
  114. a=[1,7,4,5,3,6,2,8]
  115. b=['E','B','D','F','C','A']
  116. a.sort()
  117. b.sort()
  118. print(a)
  119. print(b)
  120. #输出:[1, 2, 3, 4, 5, 6, 7, 8]
  121. #输出:['A', 'B', 'C', 'D', 'E', 'F']
  122. #如果只是想获取排序后的列表,而不是修改原列表,可以使用sorted()方法
  123. a=[1,7,4,5,3,6,2,8]
  124. b=['E','B','D','F','C','A']
  125. print(sorted(a))
  126. print(sorted(b))
  127. #输出:[1, 2, 3, 4, 5, 6, 7, 8]
  128. #输出:['A', 'B', 'C', 'D', 'E', 'F']
  129. #二、元组
  130. #元组与列表一样,也是一种序列,唯一不同的是元组不能修改。
  131. #1.语法:通过()扩起来,内部用","隔开。
  132. t=(1,2,3)
  133. print(type(t))
  134. #输出:<class 'tuple'>
  135. #2.tuple()函数:与list()函数基本上是一样的,以一个序列为参数,并把它转换为元组,如果参数是元组,则原样返回。
  136. a=[1,2,3]
  137. b=tuple(a)
  138. print(b)
  139. #输出:(1, 2, 3)






 

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/不正经/article/detail/117630
推荐阅读
相关标签
  

闽ICP备14008679号