簡體   English   中英

%字符的轉義序列

[英]Escape sequence for % character

我有下面的代碼工作正常。

a = 5
b = "%"
print "Hello %d \%s" % (a ,b)

輸出:

$ python a.py
Hello 5 \%

但是如果我嘗試以這種方式編寫代碼

a = 5
print "Hello %d \%" % a

它給出了錯誤,似乎轉義序列不能用於'%'

  File "a.py", line 2, in <module>
    print "Hello %d \%" % a
ValueError: incomplete format

為了更准確,可以用任何方法在第二個程序中輸入'%'字符。

是的,這稱為格式轉義。

>>> print 'hello %s %%' % 5
hello 5 %

您只需要使用2%。

說明文件:

'%%'不轉換任何參數,結果中出現'%'字符。

使用新型字符串格式

print "Hello {} %".format(a)

這種字符串格式設置方法是Python 3中的新標准,應優先於新代碼中的%格式設置。

或兩倍%

print "Hello %d %%" % a

當您使用字符串格式( "some %s" % ('string') )時,必須對%字符進行轉義。 為此,只需使用%%

如果字符串未格式化,則不必這樣做。

有關字符串格式,請參閱本指南

暫無
暫無

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

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