|
马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
惯例,先放问题https://fishc.com.cn/thread-38903-1-1.html 中的第6题
我的代码
- # 给出的原始列表
- list1 = ['1.Just Do It', '2.一切皆有可能', '3.让编程改变世界', '4.Impossible is Nothing']
- list2 = ['4.阿迪达斯', '2.李宁', '3.鱼C工作室', '1.耐克']
- #
- list3 = [list2.sort() (list2[x] + ' : ' + list1[x].strip('1234.')) for x in range(0, 4)]
- for each in list3:
- print(each)
复制代码
出现的问题(异常):list3这行,TypeError: 'NoneType' object is not callable,推测原因是由list2.sort()导致
list3这行的思路:先整理list2到顺序状态,然后append list1和2里对应的元素,并去除list1里面元素开头的的'1234.'这几个字符(如果有),但是list2.sort()好像不能写在list3 = []里面,然而对list2进行sort又是后面实现合理的append不可或缺的一步(不sort的话,print出来":"两边的内容会对不上)
我这个编程思路还能否拯救一下?
NB: list3的创建必须在必须在[]内完成,所以把list2.sort()挪到list3 = []外是不行的
本帖最后由 凌九霄 于 2019-1-31 01:28 编辑
- list3 = [ (sorted(list2)[ x ] + ' : ' + sorted(list1)[ x ][2:]) for x in range(0, 4) ]
复制代码
或者
- list3 = [ (sorted(list2)[ x ] + ' : ' + sorted(list1)[ x ].strip('1234.')) for x in range(0, 4) ]
复制代码
|
|