在一行for循环中使用python执行多行
我有一个循环附加到名为在一行for循环中使用python执行多行,python,for-loop,Python,For Loop,我有一个循环附加到名为list1的新列表中,它正在工作,但如何添加类似于print(x)或任何对list1.append(…)有用的内容 我试过使用list1.append(word[I]);打印(“工作”),使用,,您只需执行以下操作即可- list1 = [word[i] for i in range(len(word))] 或 你可以简单地做- list1 = [word[i] for i in range(len(word))] 或 正如我在评论中所述,列表理解不仅仅是为了在单行中执
list1
的新列表中,它正在工作,但如何添加类似于print(x)
或任何对list1.append(…)
有用的内容
我试过使用list1.append(word[I]);打印(“工作”)
,使用,
,您只需执行以下操作即可-
list1 = [word[i] for i in range(len(word))]
或
你可以简单地做-
list1 = [word[i] for i in range(len(word))]
或
正如我在评论中所述,列表理解不仅仅是为了在单行中执行for
循环。它们非常强大,但你需要了解它。您可以查看:
然而,在这种特殊情况下,代码所做的只是将字符串转换为列表,然后打印它。您可以在一行中完成,如下所示:
>>> print(list("abcdefg"))
['a', 'b', 'c', 'd', 'e', 'f', 'g']
正如我在评论中所述,列表理解不仅仅是为了在单行中执行for
循环。它们非常强大,但你需要了解它。您可以查看:
然而,在这种特殊情况下,代码所做的只是将字符串转换为列表,然后打印它。您可以在一行中完成,如下所示:
>>> print(list("abcdefg"))
['a', 'b', 'c', 'd', 'e', 'f', 'g']
定义一个“多行代码”的函数,并在理解中使用它
word="abcdefg"
list1=[]
def add_and_print(character, container):
container.append(character)
print("adding", character)
[add_and_print(character, list1) for character in word]
理解首先应该简短易读,避免复杂的理解,一个条件一个调用一个for语句应该是最大的-如果你需要复杂的循环等,创建一个生成器
[call(something) for something in some_container if something == foo]
定义一个“多行代码”的函数,并在理解中使用它
word="abcdefg"
list1=[]
def add_and_print(character, container):
container.append(character)
print("adding", character)
[add_and_print(character, list1) for character in word]
理解首先应该简短易读,避免复杂的理解,一个条件一个调用一个for语句应该是最大的-如果你需要复杂的循环等,创建一个生成器
[call(something) for something in some_container if something == foo]
列表理解并不是为了在单行中执行for循环,你们完全错了。你应该多读一些关于理解的书。你到底是什么意思?什么是“有用的”?你期望什么样的产出?!为什么不直接打印(列表(单词))?我指定这是一个示例代码(尝试并尝试),但这意味着什么?如果你没有一个你没有达到的目标,这个问题是无法回答的。若你们只是在试验,那个么这会让你们感到惊讶吗?列表理解并不是为了在单行中执行for循环,你们完全错了。你应该多读一些关于理解的书。你到底是什么意思?什么是“有用的”?你期望什么样的产出?!为什么不直接打印(列表(单词))?我指定这是一个示例代码(尝试并尝试),但这意味着什么?如果你没有一个你没有达到的目标,这个问题是无法回答的。如果你只是在做实验,那么这会让你感到惊讶吗?所以我不能把打印添加到w-这里-对于w…?那么Moinuddin的答案更适合这种情况,所以我不能将打印添加到w-这里-对于w…?那么Moinuddin的答案更适合这种情况