所以,我在学习Python的基本知识。我遇到了打印功能,基本上可以打印一些东西
我了解到我可以使用[end=""]
来结束打印功能。
比如说,
my_job = 'hacker'
print(my_job, end="")
基本上给我
hacker
另一个示例,使用与上述相同的值
print(my_job, end="test")
基本上给我
hackertest
然而,我随后在这个网站上看到了一个关于[end=""]
函数如何真正工作的很酷的帖子。然后我注意到@Ritesh Karwa发布了这个代码
myjob = 'hacker'
for c in myjob: print(c, end=" ")
基本上给了他,
h a c k e r
我知道[end=]
中“”内的空格允许输出有空格,但这是如何工作的?我的意思是,删除[for c in myjob:]并仅使用print函数,输出变为
hacker
这个[for c in myjob:]
背后的机制是什么,它允许[end=]
在字母之间应用空格,从而产生这个输出
h a c k e r
我想通过评论直接询问@Ritesh Karwa,但我没有足够的声誉。我不相信我问得很清楚,但我已经尽力了。提前感谢您提供的有用答案。我也在使用Python 3.xx
在Python中,字符串也是迭代器(即,您可以创建一个循环来逐个字符访问它们)。在这种情况下:
正在创建一个循环,其中
c
将依次具有myjob
中每个字符的值如果你只是在循环中做了
print(c)
,你最终会得到end=' '
所做的是替换默认的\n
(换行符)字符,该字符通常会强制每个print语句如上所述在单独的行上打印,而不是在每次打印后打印end=' '
(即空格)的内容。那是给你的在使用
end=
之后,您经常要记住的一件事是,下一个print
(可能完全不相关)将在上一次打印之后直接恢复,因此将显示在同一行上。人们通常会使用一个单独的print()
来打印一个新行,这样下一个无关的print语句就会从一个新行开始myjob
是字符串对象,因此是iterable。这意味着,例如,您可以应用诸如for letter in myjob
之类的循环来迭代字符串中的所有字母如您所见,print的可选end参数将标准end替换为指定的新行字符。因此,在本例中,每次出现在for循环中,都会打印下一个字母,后跟一个空格。如果不指定结尾,您将看到每个字母都将打印到新行
end=”“删除在打印操作结束时添加的不可见新行(\n)。 如果您不想在单独的行上获得结果,则可用于循环
相关问题 更多 >
编程相关推荐