一、什么情况下使用列表?
age1 = <span class="hljs-number">18</span>
age2 = <span class="hljs-number">19</span>
age3 = <span class="hljs-number">20</span>
age4 = <span class="hljs-number">21</span>
age5 = <span class="hljs-number">22</span>
<span class="hljs-string">'''
创建列表
格式:列表名 = [元素1, 元素2, ……, 元素n]
'''</span>
<span class="hljs-comment"># 创建空列表</span>
li1 = []
print(li1, type(li1))
<span class="hljs-comment"># 创建带有元素的列表</span>
<span class="hljs-comment"># 注意:列表中元素的类型可以不同,但是在今后的开发中一般不存在这种状况</span>
li2 = [<span class="hljs-number">1</span>, <span class="hljs-number">2</span>, <span class="hljs-number">3</span>, <span class="hljs-number">4</span>, <span class="hljs-number">5</span>, <span class="hljs-string">"good"</span>, <span class="hljs-keyword">True</span>]
print(li2)
<span class="hljs-comment"># 列表元素的访问</span>
li3 = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,<span class="hljs-number">4</span>,<span class="hljs-number">5</span>]
<span class="hljs-comment"># 往列表末尾添加元素</span>
li3.append(<span class="hljs-number">6</span>)
<span class="hljs-comment"># 获取元素 列表名[下标]</span>
print(li3[<span class="hljs-number">2</span>])
<span class="hljs-comment"># print(li3[9]) #下标超出范围,溢出</span>
<span class="hljs-comment"># print(li3[-1]) # 下标可以是负数,-1表示最后一个元素的下标,-2表示倒数第二个,依次类推</span>
<span class="hljs-comment"># 修改元素 列表名[下标] = 值</span>
li3[<span class="hljs-number">2</span>] = <span class="hljs-number">33</span>
<span class="hljs-comment"># li3[6] = 10 #下标不存在</span>
print(li3)
<span class="hljs-comment"># 截取列表</span>
print(li3[<span class="hljs-number">1</span>:<span class="hljs-number">3</span>])
print(li3[<span class="hljs-number">1</span>:])
print(li3[:<span class="hljs-number">3</span>])
<span class="hljs-comment"># 列表相加(列表组合)</span>
li4 = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>]
li5 = [<span class="hljs-number">4</span>,<span class="hljs-number">5</span>,<span class="hljs-number">6</span>]
li6 = li4 +li5
print(li6)
<span class="hljs-comment"># 列表相乘(列表重复)</span>
li7 = [<span class="hljs-number">7</span>,<span class="hljs-number">8</span>,<span class="hljs-number">9</span>]
li8 = li7 * <span class="hljs-number">3</span>
print(li7)
print(li8)
<span class="hljs-comment"># 成员判断</span>
li9 = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>]
print(<span class="hljs-number">1</span> <span class="hljs-keyword">in</span> li9)
print(<span class="hljs-number">4</span> <span class="hljs-keyword">in</span> li9)
概念:列表中的元素是一位列表的列表
本质:一维列表
li1 = [[<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>],
[<span class="hljs-number">4</span>,<span class="hljs-number">5</span>,<span class="hljs-number">6</span>],
[<span class="hljs-number">7</span>,<span class="hljs-number">8</span>,<span class="hljs-number">9</span>]]
print(li1[<span class="hljs-number">1</span>][<span class="hljs-number">1</span>])
li1 = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,<span class="hljs-number">4</span>,<span class="hljs-number">5</span>]
li1.append(<span class="hljs-number">6</span>)
li1.append([<span class="hljs-number">7</span>,<span class="hljs-number">8</span>,<span class="hljs-number">9</span>])
print(li1)
li2 = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,<span class="hljs-number">4</span>,<span class="hljs-number">5</span>]
li2.extend([<span class="hljs-number">6</span>,<span class="hljs-number">7</span>,<span class="hljs-number">8</span>])
print(li2)
li3 = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,<span class="hljs-number">4</span>,<span class="hljs-number">5</span>]
li3.insert(<span class="hljs-number">2</span>, <span class="hljs-number">100</span>)
print(li3)
li4 = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,<span class="hljs-number">4</span>,<span class="hljs-number">5</span>]
data = li4.pop()
print(data, li4)
li5 = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,<span class="hljs-number">4</span>,<span class="hljs-number">5</span>,<span class="hljs-number">2</span>,<span class="hljs-number">4</span>,<span class="hljs-number">2</span>,<span class="hljs-number">5</span>,<span class="hljs-number">6</span>,<span class="hljs-number">7</span>]
li5.remove(<span class="hljs-number">2</span>)
print(li5)
li6 = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,<span class="hljs-number">4</span>,<span class="hljs-number">5</span>]
li6.clear()
print(li6)
li7 = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,<span class="hljs-number">4</span>,<span class="hljs-number">5</span>,<span class="hljs-number">2</span>,<span class="hljs-number">4</span>,<span class="hljs-number">2</span>,<span class="hljs-number">5</span>,<span class="hljs-number">6</span>,<span class="hljs-number">7</span>]
print(li7.count(<span class="hljs-number">2</span>))
li8 = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,<span class="hljs-number">4</span>,<span class="hljs-number">5</span>]
print(len(li8))
li9 = [1,2,3,4,5,2,4,2,5,6,7]
print(li9.index(2))
print(max([2,3,4,1,4,6,7,3]))
li10 = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,<span class="hljs-number">4</span>,<span class="hljs-number">5</span>]
li10.reverse()
print(li10)
li11 = [<span class="hljs-number">2</span>,<span class="hljs-number">1</span>,<span class="hljs-number">3</span>,<span class="hljs-number">5</span>,<span class="hljs-number">4</span>]
li11.sort()
print(li11)
str1 = "baism"
li12 = list(str1)
print(li12, type(li12))
num1 = <span class="hljs-number">1</span>
num2 = <span class="hljs-number">1</span>
print(id(num1), id(num2))
print(num1 == num2)
print(num1 <span class="hljs-keyword">is</span> num2)
num3 = <span class="hljs-number">401</span>
num4 = <span class="hljs-number">401</span>
print(id(num3), id(num4))
print(num3 == num4)
print(num3 <span class="hljs-keyword">is</span> num4)
a = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,<span class="hljs-number">4</span>,<span class="hljs-number">5</span>]
b = a
print(id(a), id(b))
print(a == b)
print(a <span class="hljs-keyword">is</span> b)
c = [1,2,3,4,5,[7,100,9]]
d = c
print(c == d)
print(c is d)
c[5][0] = 60
print(c)
print(d)
<span class="hljs-keyword">from</span> copy <span class="hljs-keyword">import</span> copy
a = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,<span class="hljs-number">4</span>,<span class="hljs-number">5</span>]
b = copy(a)
print(id(a), id(b))
print(a == b)
print(a <span class="hljs-keyword">is</span> b)
c = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,[<span class="hljs-number">4</span>,<span class="hljs-number">5</span>,<span class="hljs-number">6</span>]]
d = copy(c)
print(id(c), id(d))
print(c == d)
print(c <span class="hljs-keyword">is</span> d)
print(id(c[<span class="hljs-number">3</span>]), id(d[<span class="hljs-number">3</span>]))
print(c[<span class="hljs-number">3</span>] == d[<span class="hljs-number">3</span>])
print(c[<span class="hljs-number">3</span>] <span class="hljs-keyword">is</span> d[<span class="hljs-number">3</span>])
<span class="hljs-keyword">from</span> copy <span class="hljs-keyword">import</span> deepcopy
a = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,<span class="hljs-number">4</span>,<span class="hljs-number">5</span>]
b = deepcopy(a)
print(id(a), id(b))
print(a == b)
print(a <span class="hljs-keyword">is</span> b)
c = [<span class="hljs-number">1</span>,<span class="hljs-number">2</span>,<span class="hljs-number">3</span>,<span class="hljs-number">4</span>,<span class="hljs-number">5</span>,[<span class="hljs-number">6</span>,<span class="hljs-number">7</span>,<span class="hljs-number">8</span>]]
d = deepcopy(c)
print(id(c), id(d))
print(c == d)
print(c <span class="hljs-keyword">is</span> d)
print(id(c[<span class="hljs-number">5</span>]), id(d[<span class="hljs-number">5</span>]))
print(c[<span class="hljs-number">5</span>] == d[<span class="hljs-number">5</span>])
print(c[<span class="hljs-number">5</span>] <span class="hljs-keyword">is</span> d[<span class="hljs-number">5</span>])