[问题] \n 什么意思?

楼主: seiryou (反逆的鲁鲁蛇)   2014-10-19 22:58:26
#!/usr/bin/python
# Filename: using_list.py
# This is my shopping list
shoplist = ['apple', 'mango', 'carrot', 'banana']
print 'I have', len(shoplist),'items to purchase.'
print 'These items are:', # Notice the comma at end of the line
for item in shoplist:
print item,
print '\nI also have to buy rice.'
shoplist.append('rice')
print 'My shopping list is now', shoplist
print 'I will sort my list now'
shoplist.sort()
网络上范例里常用到\n
请问这功用是什么?
顺便问一下
sort() 中间没有放数字是因为shoplist一开始没有定义()中的数字吗?
感谢回答~
作者: mikapauli (桜花)   2014-10-19 23:05:00
newline
楼主: seiryou (反逆的鲁鲁蛇)   2014-10-19 23:13:00
喔喔 我刚试了一下 的确没有那两个字就没办法换行但是奇怪的是为什么其他底下的print 'i will sort my lis他没有\n在前面 但是仍旧会自己换新行?
作者: alibuda174 (阿哩不达)   2014-10-19 23:19:00
请查询2.x版print的用法print 'xyz' 默认会印出xyz与\nprint 'xyz', 若加个逗号则不会有\n
作者: uranusjr (←這人是超級笨蛋)   2014-10-19 23:36:00
其实逗号是插入空白(而非换行)
作者: alibuda174 (阿哩不达)   2014-10-20 20:14:00
u大:据我所知 逗号与空白字符无关 不知您的资料来源?当2.x print输出一个东西时 若不是在该行开头 就会先加上一个空白字符
作者: freeunixer (御剑客)   2014-10-21 06:48:00
print 后面夹的是单引号跟双引号,结果不一样.如果连 ''、 "" 的差别都不知,那请 back 到前面重看..有逗点表示不换行,继续跑下去,没逗点,就自动跳行."\n" always 是自己打上去的,程式不会自己画蛇添足.不好意思,上面的''跟""对\n没有差别,我讲到别地方去了
作者: uranusjr (←這人是超級笨蛋)   2014-10-21 10:36:00
@alibuda174 我也忘了, 或许是我自己记错@freeunixer 你可能写太多 Ruby 或 Perl 了 XD
作者: wohtp (会喵喵叫的大叔)   2014-10-21 17:30:00
楼上的f大好像混进别的语言了...print的作用是把后面的string送去stdout你连续两行写两个 print string1 print string2 试试看,输出会自动换行因为print的确在中间塞了一个 \nhttp://ppt.cc/Tc~Z官方文件写得清清楚楚
作者: freeunixer (御剑客)   2014-10-21 21:45:00
我是说你"看得到的 '\n'"是自己打上去的.print 会自己跳行,但不会印个 \n 出来给你看...除非你不是要 print 跳行,是要印个 \n 出来给你看...
作者: wohtp (会喵喵叫的大叔)   2014-10-21 22:48:00
你把print指到stdout以外的档案去就看得到那个\n了print指到stdout会自己跳行,就是因为它送了一个\n,然后stdout把\n理解成跳行啊
作者: freeunixer (御剑客)   2014-10-21 23:21:00
你讲那不是废话,我也知道那是有插一个 \n 进去.执行就直接跳行了,你再讲输出转指就会印出来是要干嘛?跳行就不会印出 \n, 印出 \n 就不会跳行.二选一的事,要卯起来挑语病吗?我上面是不是写了:除非你不是要 print 跳行,是要印个 \n 出来给你看...
作者: scott260202 (Cake)   2014-10-22 00:21:00
不要争这个啦~\n有写程式的大家都很清楚何必争原PO也了解了就好

Links booklink

Contact Us: admin [ a t ] ucptt.com