• 列表

内容详细

1.列表

  1. 公共
  2. 独有方法
  3. 删除 remove pop clear del区别
  4. 强制转换
#表示多个事物
users=["lili","Joe","Mari",99]

1.公共方法

  • len

  • users=["lili","Joe","Mari",99]
    val=len(users)
    print(val)
    #4
    
  • index

    users=["lili","Joe","Mari",99]
    val=users[0]
    print(val)
    #lili
    
    
  • 切片:v[:]

    users=["lili","Joe","Mari",99]
    val=users[0:2]
    print(val)
    #lili
    #Joe
    
  • 步长

    users=["lili","Joe","Mari",99]
    val=users[0::2]
    print(val)
    #lili
    #Mari
    
    #练习
    #输入两个数相加:5+9,5+ 9;5 + 9
    content = input("请输入几个数相加:如5+9:")
    content1 = content.split("+")
    con_len = len(content1)
    sum=0
    index=0
    while index < con_len:
        val = content1[index]
        num = int(val)
        sum = sum+num
        index += 1
    print(sum)
    
    
  • for循环

    • For "ele" in [""]:

    • For "ele" in range(index0,index1,步长):默认顺序输出

      range(0,10): 默认输出0-9

    #1.输出序号和内容
    users=["lili","Joe","Mari",99]
    count=0
    for i in users:
        print(count,i)
        count+=1
    #0 lili
    #1 Joe
    #2 Mari
    #3 99
    
    
    #2.range()默认顺序输出
    users=["lili","Joe","Mari",99]
    val=len(users)
    for index in range(0,val):
      print(index,users[index]) 
      
    #3.反转输出9-0
      print(list(range(9,-1,-1)))
      
    #4.打印0-100之间的偶数
    #方案一
    for count in range(0,101):
        if count%2 == 0:
            print(count)
    #方案二
    for count in range(0,102,2)
    
    #5.给用户展示商品列表 goods=["火车","飞机","大炮"]
    #1 火车
    #2 飞机
    #3 大炮
    #用户输入序号,输出对应的商品
    goods=["火车","飞机","大炮"]
    len1=len(goods)
    for index in range(0,len1):
        print(index+1,goods[index])
    val=input("请输入商品序号:")
    val=int(val)-1
    templ="你选择的商品是:%s"%(goods[val])
    print(templ)
    
    1 火车
    2 飞机
    3 大炮
    请输入商品序号:1
    你选择的商品是:火车
      
    
  • 删除 —> del

  • del users[1:4]#删除1-4
    
    注意:
    • 字符串本身不能删除[不可变类型]
    • 列表是可变类型
    #字符串本身不能修改或者删除
    v1="Gao"
    del v1[1]
    print(v1)
    #报错❌
    
    #列表
    users=["lili","Joe","Mari",99]
    #方案一
    user.pop(1)
    #方案二
    del users[1]
    
    
  • 修改

    #字符串本身不能修改或者删除
    v1="Gao"
    v1[1]=”B“
    print(v1)
    #报错❌
    
    #列表
    users=["lili","Joe","Mari",99]
    #方案一
    user[1]=”Bang“
    #正确
    user[1][0]="R"
    #报错❌
    

2.独有方法

1.追加:append

users.append(name)

users=[]
for ele in range(0,3):
  name=input("输入内容:")
  users.append(name)
 print(users)

#用户名密码校验
username=input("name:")
pwd=input("pwd")
for ele in users:
  resulr=ele.split(",")
  user=result[0]
  passwd=result[1]
  if user=="username" and passwd=="pwd":
    print("登陆成功")
2.插入insert

users.insert(index,"内容")

users=["lili","Joe","Mari",99]
users.insert("0","GaoGao")
print(users)
#在指定的索引位置进行插入元素
3.删除(弹出):
  • users.remove("内容")

    从左往右第一单个删除,内容不存在将报错

    users=["lili","Joe","Mari",99]
    users.remove("Jo")#报错  找不到内容
    
  • Users.pop(index):

    在列表中删除,并可以将值赋值给变量 如不加index代表删除末尾最后一个

    val=users.pop(index)

    users.pop()#如不加index代表删除末尾最后一个
    
  • users.clear(): 清空

4. entend()

内部实现for循环 extend(字符串,列表,元组):将循环出来的字符串一个一个加到列表中

#1.把s中的每一个字符添加到users列表中
s="hfhksk"
users.extend(s)
["h","f","h","k","s","k"]
#2.元祖举例
people=("1","2","bang")
users.extend(users)#在user中添加
people.extend(people)#报错   元祖没有extend方法
li=[1,2,4,5]
st="abc"
li.extend(st)
print(li)
#[1, 2, 4, 5, 'a', 'b', 'c']
li=[1,2,4,5]
st=["a","b","c"]
li.extend(st)
print(li)
#[1, 2, 4, 5, 'a', 'b', 'c']

li=[1,2,4,5]
st=("a","b","c")
li.extend(st)
print(li)
#[1, 2, 4, 5, 'a', 'b', 'c']
6. 反转reverse()
v1=[1,2,3]
v1.reverse()
print(v1)
#[3, 2, 1]
7. 列表嵌套
  • users=["Gao",0,True,[11,22,33,"GAO"]]
    user[0]
    users[2]
    users[0][2]#o
    user[3][-1]#GAO
    users[3][-1][-1]#O
    users[3]=666
    
8.排序sort()

   #6. List.sort()
   ```python
   #v1.sort(reverse=True)#从大到小
   #v1.sort(reverse=False)#从小到大  默认
   #v1.sort(reverse=True)#从大到小
   #v1.sort(reverse=False)#从小到大  默认


### 3.remove/pop/clear/del区别

- remove 删除内容不存在将会报错,删除的是内容
- pop(0)删除索引 ,可以将pop值赋给新变量将其接收
- clear:清空
- del val[index]/[index0:index2]:删除一个或者一组数据

### 4.强制转换

##### 1.list(字符串)

​```python
a=list("abc")
#['a', 'b', 'c']
2.list(元组)
a=list(("abc",3,4))
print(a)
#['abc', 3, 4]

5. 练习

1.题目将列表中元素使用_连接

#1.题目将列表中元素使用_连接  

   注意点:属于字符串的join()方法,join会循环遍历列表中的每一个元素
   nums=[11,22,33,44]
   val="_".join(nums)
   print(val)
   #报错  因为列表的元素是int类型  没有join(),得先转换成字符串
   #不能直接使用for in 语句
   
   #nums=["11","2","33","44"]
   for i in range(0,len(nums)):
       nums[i]=str(nums[i])
   print(nums)
   

   

6.列表总结:

    • append()/insert(index,"")
    • remove("内容")/ val.pop(index) / clear()
    • del val[index] :公共
  • val[3]="新值"

  • val[3] / 切片

  • 列表嵌套