我正在嘗試爲caeasar密碼寫一個python一行,從echo輸入並將它轉換爲3個字符。當我運行它時,我收到一條語法錯誤消息。如果有人能指出我的語法錯誤,我將不勝感激。我正在使用python 2.6上分os 6.python caeasar cipher需要語法幫助一個班輪輸入從bash echo命令
〜$ echo「HELLO」|蟒-c 「進口SYS;打印 ''。加入(CHR(ORD(線)+ 3ys.stdin])」
文件 「」,第1行
import sys; print ' '.join(chr(ord(line)+3)[for line in sys.stdin])
^
語法錯誤:無效的語法
當然的了放應打印:。KHOOR
謝謝
〜$ echo「HELLO」| python -c「import sys; print」「.join(」「。用於在line.strip()中的字符的加入(chr(ord(char)+3)用於sys.stdin中的行)」感謝您的幫助。當我按照你的建議去做時,似乎打印出一行空白或一行空格。 –
請小心命令行上的引號!我懷疑你的shell和Python之間的東西是亂碼的。在Windows中,我通過在Python代碼中使用單引號和爲shell使用雙引號來使其工作。在一個類似Unix的系統上,我認爲兩者都可以在任何地方工作,只是不要在兩個地方使用相同的地方(除非你想逃避內部)。 – Blckknght
例如使用'echo「HELLO」| python -c'import sys;打印「\ n」.join(「」。對於sys.stdin中的行,加入(chr(ord(char)+3)用於line.strip()中的char)' ' – fredtantini