|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
本帖最后由 铁棍阿童木 于 2017-9-19 12:56 编辑
0.保证没上机实验。
print(new)的输出结果肯定还是原来的列表:1,2,3,4,5
原理就是:>>>old = [1,2,3,4,5] 第一步把列表贴了标签“old”;
>>>new = old 第二步把列表贴了第二个标签“new”;
>>>old = [6] 第三步把“old”标签又贴到了列表[6]上去了;
>>>print(new) 第四步打印“new”;
>>>1,2,3,4,5 因为列表[1,2,3,4,5]还是贴着标签“new”。
01.list1=[1,[1,2,["小甲鱼"]],3,5,8,13,18]
如何把“小甲鱼”修改为“小鱿鱼”?
最蠢的办法,没有之一“
>>>list1 =[1,[1,2,["小甲鱼"]],3,5,8,13,18]
>>>del list1[1]
>>>list1
>>>[1,3,5,8,13,18]
>>>list1.insert(1,[1,2,["小鱿鱼"]])
>>>list1
>>>[1,[1,2,["小鱿鱼"]],3,5,8,13,18]
就问你们怕不怕?!!!
02.使用sort()方法!
03.使用sort(reverse=True)方法!
05.>>>[i * i for i in range(10)]
>>>[0,1,4,9,16,25,36,49,64,81]
虽然觉得是这个,但还是在IDEL中验证了才发出来的。
另外:>>>list1 = [(x,y) for x in range(10) for y in range(10) if x%2==0 if y%2!=0]
我的推导:
list1 = []
for x in range(10):
for y in range(10):
if x%2 == 0 and y%2 != 0:
list1.append((x, y))
print(list1)(注:不加这个print语句,在IDEL中验证是不会有任何输出的。)
结果如图:
06.这个当时没想出来。看了小甲鱼的答案。
不过我还是喜欢这种形式:
list1 = ['1.Just do it','2.一切皆有可能','3.让编程改变世界','4.Impossible is nothing']
list2 = ['4.阿迪达斯','2.李宁','3.鱼C工作室','1.耐克']
list3 = []
for slogan in list1:
for brand in list2:
if slogan[0] == brand[0]:
list3.append((brand + ":" + slogan[2:]))
for each in list3:
print(each)
但是,不得不承认,推导式列表更加简洁高效。一行代码在这里要用5行。
|
-
|