编辑:我已经意识到我的错误(如果语句,变量 x 被分配给字符串中的元素,我正在比较列表的长度).. 明天早上试图解决这个问题。为愚蠢的错误道歉,但我会很感激任何学习。
我正在尝试将两个列表合并为一个列表。
m = [1,2,3]
n = [4,5,6]
v = m+n
def myFun():
return [(str(x)+str(y)) for x in m if x < len(m) for y in n if y < len(n)]
print(myFun())
myFun() 的结果应该显示 "14, 25, 36"
我还尝试将代码分解为一个更 Python 的世界,并看到我误入歧途的地方:
def my(fun()):
for x in m if x < len(m):
for y in n if y < len(n): # problem here, running until count 9 instead of 3
# like it's supposed to.. author error..
newlist.append(str(x)+str(y))
print(newlist)
我是否朝着正确的方向前进,或者我应该尝试构建地图,我已经看到几页说如果您必须使用 list-comp 或 lambda 反转地图可能会适得其反?此外,是否可以在列表理解/lambda 中计算特定对象?(例如列表长度)?