小猿圈第二章答案

1、请用代码实现:利用下划线将列表的每一个元素拼接成字符串,li=[‘alex’, ‘eric’, ‘rain’]
li = ['alex', 'eric', 'rain']
li='_'.join(li)
print(li)
print(type(li))
2 、查找列表中元素,移除每个元素的空格,并查找以a或A开头并且以c结尾的所有元素。
li = ["alec", " aric", "Alex", "Tony", "rain"]
tu = ("alec", " aric", "Alex", "Tony", "rain")
dic = {'k1': "alex", 'k2': ' aric', "k3": "Alex", "k4": "Tony"}
i = ["alec", " aric","Alex","Tony"," rain","Alec"]
for line in li:
line=line.strip()
if line.startswith("a")or line.startswith("A") and line.endswith("c"):
print(line)

3、写代码,有如下列表,按照要求实现每一个功能
li=[‘alex’, ‘eric’, ‘rain’]
计算列表长度并输出
li = ['alex','eric','rain']
print(len(li))
列表中追加元素“seven”,并输出添加后的列表
li = ['alex','eric','rain']
li.append('seven') 在列表末尾
print(li)
请在列表的第1个位置插入元素“Tony”,并输出添加后的列表
li = ['alex','eric','rain']
li.insert(1,"Tony") insert指定位置添加
print(li)
请修改列表第2个位置的元素为“Kelly”,并输出修改后的列表
li = ['alex','Tony','eric','rain']
li[1]='Kelly'
print(li)
请删除列表中的元素“eric”,并输出修改后的列表
li = ['alex', 'Kelly', 'eric', 'rain']
li.pop(2) pop del 删除 clear清空
print(li)
请删除列表中的第2个元素,并输出删除的元素的值和删除元素后的列表
li = ['alex', 'Kelly', 'eric', 'rain']
print(li.pop(2),li)
请删除列表中的第3个元素,并输出删除元素后的列表
li = ['alex', 'Kelly', 'eric', 'rain']
print(li.pop(3))
请删除列表中的第2至4个元素,并输出删除元素后的列表
li = ['alex', 'Kelly', 'eric', 'rain']
del li [1:]
print(li)
请将列表所有的元素反转,并输出反转后的列表
li = ['alex', 'Kelly', 'eric', 'rain']
li.reverse()
print(li)
请使用for、len、range输出列表的索引
li = ['alex', 'Kelly', 'eric', 'rain']
for i in range(0,len(li)) :
print(i)
请使用enumrate输出列表元素和序号(序号从100开始)
li = ['alex', 'Kelly', 'eric', 'rain']
for a,b in enumerate(li,100):
print(a,b)
请使用for循环输出列表的所有元素
li = ['alex', 'Kelly', 'eric', 'rain']
for i in li :
print(i)

4、写代码,有如下列表,请按照功能要求实现每一个功能
li = ["hello", 'seven', ["mon", ["h", "kelly"], 'all'], 123, 446]
请根据索引输出“Kelly”
li =['hello','seven',['mon',['h','kelly'],'all'],123,446]
print(li[2][1][1])
请使用索引找到’all’元素并将其修改为“ALL”,如:li[0][1][9]…
li =['hello','seven',['mon',['h','kelly'],'all'],123,446]
li[2][2]='ALL'
print(li)

6、转换
将字符串s = “alex”转换成列表
s = 'ales'
s1 = list (s)
print(s1)
将字符串s = “alex”转换成元祖
s = 'ales'
print(tuple(s))
将列表li = [“alex”, “seven”]转换成元组
li = ['alex','seven']
print(tuple(li))
将元组tu = (‘Alex’, “seven”)转换成列表
t =u ('Alex','seven')
print(list(tu))
将列表li = [“alex”, “seven”]转换成字典且字典的key按照10开始向后递增

7、元素分类
有如下值集合[11,22,33,44,55,66,77,88,99,90],将所有大于66的值保存至字典的第一个key中,
将小于66的值保存至第二个key的值中。
即:{‘k1’:大于66的所有值, ‘k2’:小于66的所有值}。(编程题)
n = [11,22,33,44,55,66,77,88,99,90]
dic = {
'k1':[],
'k2':[]
}
for i in n :
if i >66 :
dic['k1'].append(i)
else :
dic['k2'].append(i)
print(dic)

8、在不改变列表数据结构的情况下找最大值li = [1,3,2,7,6,23,41,243,33,85,56]。(编程题)
li = [1,3,2,7,6,23,41,243,33,85,56]
n =li[0]
for i in li :
if i > n:
n = i
print(n)
9、在不改变列表中数据排列结构的前提下,找出以下列表中最接近最大值和最小值的平均值
的数li = [-100,1,3,2,7,6,120,121,140,23,411,99,243,33,85,56]。(编程题)
li = [-100,1,3,2,7,6,120,121,140,23,411,99,243,33,85,56]
n = li[0]
m =li[0]
for i in li :
if i > n:
n= i
if i< m:
m =i
i =(n+m)/2
print(i)
10、利用for循环和range输出9 * 9乘法表 。(编程题)
row = 1
while row<=9 :
col =1
while col <= row:
print("%s*%s=%s"%(row,col,row*col),end=' ')
col += 1
print()
row += 1

posted @ 2019-07-03 16:37  余生请你指教  阅读(1103)  评论(0编辑  收藏  举报