簡體   English   中英

如何使用python -c運行多行

[英]How to run multiple lines using python -c

我需要使用python -c遠程運行一些代碼,它在我使用時工作:

python -c "a=4;print a"
4

要么

python -c "if True:print 'ye'"

但是python -c "a=4;if a<5:print 'ye'"將產生錯誤:

File "<string>", line 1
    a=4;if a<5:print 'ye'
    SyntaxError: invalid syntax

我該怎么做才能使它有效,有什么建議嗎?

用單引號括起來並使用多行:

python -c '
a = 4
if a < 5:
    print "ye"
'

如果您需要在代碼中使用單引號,請使用這個可怕的構造:

python -c '
a = 4
if a < 5:
    print '\''ye'\''
'

這是有效的,因為大多數UNIX shell不會解釋單引號之間的任何內容 - 所以我們有一些Python代碼,直到我們需要單引號。 由於它完全沒有被解釋,我們不能只是逃避報價; 相反,我們結束引號,然后插入一個文字引號(轉義,因此它不會被解釋為新引號的開頭), 最后是另一個引號,讓我們回到未解釋的字符串狀態。 這有點難看,但它確實有效。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM