社区所有版块导航
Python
python开源   Django   Python   DjangoApp   pycharm  
DATA
docker   Elasticsearch  
aigc
aigc   chatgpt  
WEB开发
linux   MongoDB   Redis   DATABASE   NGINX   其他Web框架   web工具   zookeeper   tornado   NoSql   Bootstrap   js   peewee   Git   bottle   IE   MQ   Jquery  
机器学习
机器学习算法  
Python88.com
反馈   公告   社区推广  
产品
短视频  
印度
印度  
Py学习  »  Python

python 3.7\n不在变量列表[]中工作,但在tuple()和string“”varaibles中工作?困惑的

AHopefulProgrammer • 5 年前 • 1553 次点击  

所以我是一个新手,试图建立一个简单的多项选择游戏,我遇到了一个困惑的问题。

我的问题是关于新行命令的\n

如果我只是键入一个简单的打印语句,比如

print("Hello\nThere") 

这条新线路运行良好。同样,如果创建一个变量字符串,比如

phrase = "Hello\nThere"  
print(phrase)

这条新线登记得很好。我还可以将变量设置为一个元组(至少我认为using()创建了一个元组,仍然是新的,所以可能是错误的),比如

phrases = ("Hello There\nHow are you") 
print(phrases) 

它还正确地注册新行。但是,一旦我试图将变量设置为列表,它就不再工作。所以如果我做

phrases = ["Hello there\nHow are you"]
print(phrases)

它不会注册新行,只会打印出来。

为什么会这样?不能在变量列表中使用新行命令吗?如果不是为什么?超级困惑为什么它对其他一切都有用但不是这个

编辑:好的,对不起,当它不是元组的时候叫它元组。但实际上,我的问题是,为什么在使用方括号[]时命令不起作用,而在使用圆括号()时却可以正常工作?我想弄明白为什么逻辑不起作用,这样我才能更好地理解这一点

好吧,我想我现在明白了。谢谢大家的回答!真的很有帮助

Python社区是高质量的Python/Django开发社区
本文地址:http://www.python88.com/topic/39649
 
1553 次点击  
文章 [ 3 ]  |  最新文章 5 年前
Nishchay
Reply   •   1 楼
Nishchay    6 年前

既然您正在打印列表本身,那么为什么您没有得到一个新行,而是得到一个类似于

['Hello there\nHow are you']

因此,当您将值或字符串附加到列表时,只需遍历列表并打印

假设,我们有一个片段

phrase1="Hey there \t What's Up"
phrase2='How you doing \nEverythings is good?'
phrase3='Ok fine \n\nHave a nice day ahead!'
l=[phrase1,phrase2,phrase3]
for value in l:
    print(value)

所以这个结果将是

Hey there      What's Up
How you doing
Everythings is good?
Ok fine 

Have a nice day ahead!

现在你会看到一切都很好!

ZhouZhuo
Reply   •   2 楼
ZhouZhuo    6 年前
In [4]: phrases = ("Hello There\nHow are you")

In [5]: type(phrases)
Out[5]: builtins.str

我在ipython中试过这个,你看,(“hello there\nhow are you”)是字符串而不是元组。

print(["Hello there\nHow are you"]) 不会真正打印出字符串,它只是告诉您列表中的内容。

Austin
Reply   •   3 楼
Austin    6 年前

因为, phrases = ("Hello There\nHow are you") 不是元组,它仍然是字符串。

如果你这样做了 phrases = ("Hello There\nHow are you",) ,它将成为元组,并且不会像在list case中那样注册换行符。

您可能需要获取元素以测试换行符,如下所示:

phrases = ("Hello There\nHow are you",)
print(phrases[0])

phrases = ["Hello There\nHow are you"]
print(phrases[0])