python第四天課程:列表(增,刪,改,查),元祖

'''
#1.增加 append insert
li = ['alex',[1,2,3],'wusir','egon','女神','taibai']
li.append('日天')
print(li)
li.append(1)
print(li)
while 1:
    name = input('請輸入您的姓名,按q鍵退出')
    if name.lower().strip() == 'q':
        break
    else:
        li.append(name)
print(li)

li = ['alex',[1,2,3],'wusir','egon','女神','taibai']
li.insert(4,'春哥') #插入
print(li)

li.extend('春哥') #extend:在結尾加入以逗號分開的元素
print(li)
li.extend([1,2,3])
print(li)
'''

'''
#刪除
li = ['taibai','alex','wusir','egon','女神',]
name = li.pop(1) #返回值
name = li.pop() #默認刪除最後一個
print(name,li)

li.remove('taibai') #按元素去刪除
print(li)

li.clear() #清空
print(li)

li = ['taibai','alex','wusir','egon','女神',]
del li 
del li[0:2] #切片去刪除
print(li)
'''

'''
#改
li = ['taibai','alex','wusir','egon','女神',]
li[0] = '男獸'
print(li)
li[0] = '1,2,3'
print(li)
#切片
li[0:3] = '云姐plfdslkmgdfjglk'
li[0:3] = [1,2,3,'春哥','咸鱼哥']
print(li)
'''

'''
#查
li = ['taibai','alex','wusir','egon','女神',]
for i in li:
    print(i)
print(li[0:2])
'''

'''
#公共方法
li = ['taibai','alex','wusir','egon','女神',]
l = len(li)
print(l)
num = li.count('taibai')
print(num)
print(li.index('wusir'))
li = [1, 3, 5, 4, 7, 6, 2, 3]
#正向排序
li.sort()
print(li)
#反序排序
li.sort(reverse=True)
print(li)
#反轉
li.reverse()
print(li)
'''

'''
#列表的嵌套
li = ['taibai','武藤兰','苑昊',['alex','egon',89],23]
print(li[1][1])
li[0] = li[0].capitalize()
print(li[0])
li[2] = '苑日天'
print(li)
li[2] = li[2].replace('昊', '日天')
print(li)
li[3][0] = li[3][0].upper()
print(li)
'''

 

'''
#元祖 只讀列表,可循環查詢,可切片
#兒子不能改,孫子可以改
tu = (1,2,3,'alex',[2,3,4,'taibai'],'egon')
print(tu[3])
print(tu[0:4])
for i in tu:
    print(i)
tu[4][-1] = tu[4][-1].upper()
print(tu)
tu[4].append('sb')
print(tu)

s = 'alex'
s1 = 'sb'.join(s)
print(s1)

#列表轉換成字符串  list ----> str join
li = ['taibai','alex','wusir','egon','女神',]
s = ' '.join(li)
print(s)
#str ---- > list
lz = 'taibai alex wusir egon 女神'
s1 = lz.split()
print(s1)

# range  [1,2,3,4,5,6..........,100........]
for i in range(3,10):
    print(i)
for i in range(10):
    print(i)
for i in range(0,10,3):
    print(i)
for i in range(10,0,-2):
    print(i)
for i in range(10,-1,-2):
    print(i)

li = [1,2,3,5,'alex',[2,3,4,5,'taibai'],'afds']
for i in li:
    if type(i) == list:
        for k in i:
            print(k)
    else:
        print(i)
'''

 HW:

'''
#1.寫代碼,有如下列表,要求實現每一個功能
li = ['alex','wusir','eric','rain','alex']
#1).計算列表的長度並輸出
print(len(li))

#2).列表中追加元素'seven',並輸出添加后的列表
li.append('seven')
print(li)

#3).請在列表的第一個位置插入元素'Tony',並輸出添加后的列表
li.insert(0, 'Tony')
print(li)

#4).請修改列表第二個位置的元素為'Kelly',並輸出修改後的内容
li[1] = 'kelly'
print(li)

#5).請將列表l2=[1,'a',3,4,'heart']每一個元素添加到列表li中,一行代碼實現, 不允許循環添加
li.extend([1,'a',3,4,'heart'])

#6).請將字符串 s='qwert'的每一個元素添加到列表li中,一行代碼實現, 不允許循環添加
li.extend('qwert')

#7).請刪除列表中的元素'eric',並輸出添加后的列表
li.remove('eric')
print(li)

#8).請刪除列表中的第二個元素,並輸出刪除的元素和刪除元素后的列表
li.pop(1)
print(li)

#9).請刪除列表中的第二至四個元素,並輸出刪除元素后的列表
del li[1:4]
print(li)

#10).請將列表所有的元素反轉, 並輸出反轉后的列表
li.reverse()
print(li)

#11).請計算出'alex'元素在列表li中出現的次數,並輸出該次數
print(li.count('alex'))

#2.寫代碼, 有如下列表, 利用切片實現每一個功能
li = [1, 3, 2, 'a', 4, 'b', 5, 'c']
#1).通過對li列表的切片形成新的列表l1,l1=[1,3,2]
l1 = li[0:3]

#2).通過對li列表的切片形成新的列表l2,l2=['a',4,'b']
l2 = li[3:6]

#3).通過對li列表的切片形成新的列表l3,l3=[1,2,4,5]
l3 = li[0::2]

#4).通過對li列表的切片形成新的列表l4,l4=[3,'a','b']
l4 = li[1:6:2]

#5).通過對li列表的切片形成新的列表l5,l5=['c']
l5 = li[-1]

#6).通過對li列表的切片形成新的列表l6,l6=['b','a',3]
l6 = li[-3::-2]

#3.寫代碼,有如下列表,按照要求實現每一個功能
lis = [2, 3, 'k', ['qwe', 20, ['k1', ['tt', 3, '1']], 89], 'ab', 'adv']
#1).將列表lis中的'tt'變成大寫(用兩種方法)
print(lis[3][2][1][0].upper())
lis[3][2][1][0] = 'TT'


#2).將列表中的數字3變成字符串100(用兩種方法)
lis[3][2][1][1] = lis[3][2][1][1] + 97
print(lis)

lis[3][2][1][1] = int(str(lis[3][2][1][1]).replace('3', '100'))
print(lis[3][2][1][1])

#3).將列表中的字符串'1'變成數字101(用兩種方法)
lis[3][2][1][2] = int(lis[3][2][1][2]) + 100
print(lis)
lis[3][2][1][2] = int(lis[3][2][1][2].replace('1', '101'))
print(lis)

#4).請用代碼實現:
li = ['alex', 'eric', 'rain']
#利用下劃綫將列表的每一個元素拼接成字符串'alex_eric_rain'
l1 = '_'.join(li)
print(l1)
'''

 

转载于:https://www.cnblogs.com/yvz5414/p/10182160.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值