[問題] \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