Python中單引號和雙引號

2021-08-05 19:00:09 字數 1390 閱讀 3225

python中可以用單引號(' ')或者雙引號(" ")表示字串,如

print "hello world!"

print 'hello world!'

輸出結果是一樣的,如下

如果字串中含有帶引號的字串呢?用另外一種引號即可。如

print "i'd much rather you 'not'."

print 'i "said" do not touch this.'

輸出結果如下:

需要注意的是,如果字串中含有帶雙引號的字串,那麼整個字串不應該再用雙引號來表示,而應該選擇用單引號。

這是因為,對於乙個左引號而言,將會尋找其右側最近的右引號作為匹配,所以如果用雙引號表示的字串中再套用雙引號表示的字串,將產生不符合我們預期的結果。

當然,如果實在需要在雙引號表示的字串中使用雙引號,可以用對雙引號進行轉義,即 \".

除了直接輸出字串常量,還可以輸出包含變數內容的字串,只需要使用「格式化字串」。如果要在格式化字串中輸出字串型的變數,可以使用兩種格式化字元,%s 和 %r。兩者的差別在於,前者只會輸出字串變數本身的值,而忽略用於表示的引號;而後者會連引號一起輸出。例如,

x = "taller"

y = 'shorter'

print "the %s boy is smarter." % x

print "the %r boy is smarter." % x

print 'the %s boy is smarter.' % x

print 'the %r boy is smarter.' % x

print "the %s girl is fatter." % y

print "the %r girl is fatter." % y

print 'the %s girl is fatter.' % y

print 'the %r girl is fatter.' % y

輸出結果為:

由此可見,

1. 不管格式化字串是用單引號還是雙引號表示的,裡面的字串變數既可以是單引號表示的,也可以是雙引號表示的。

2. 用格式化字元 %s 來列印字串變數,只會列印字串本身的內容,不會列印引號。

3. 用格式化字元 %r 來列印字串變數,會列印引號。它的含義是「不管什麼都列印出來」(出自《笨方法學python》)。

4. 用 %r 列印字串變數時,不管原來的字串變數是用的單引號還是雙引號表示,列印出來的都是單引號。

單引號和雙引號

char p1 1 char p2 1 1 的ascii碼值為49 0和49位址處為作業系統使用,故訪問這些位址如printf s,s,s p1,p2,p3 會產生段錯誤。printf n n的ascii碼值為10,同理,段錯誤。a 表示字元常量,在記憶體中佔1個位元組,a 1表示 a 的ascii...

單引號( )和雙引號( )

關鍵是要養成良好的習慣.單引號 一般用在單字元,如 c 雙引號 一般用在字串,如 abc 如果巢狀使用的話,一般用交替方法,尤其是html中.如,也可以改成.在分割乙個字串時要用到str.split或者regex.split。簡單的單個字串的替換,直接用字串.split 單個字串 多個字串的替換用r...

python中單引號和雙引號區別

python字串通常有單引號 雙引號 三引號 或 包圍,三引號包含的字串可由多行組成,一般可表示大段的敘述性字串。在使用時基本沒有差別,但雙引號和三引號 中可以包含單引號,三引號 可以包含雙引號,而不需要轉義 如 s1 hello,world 如果要寫成多行,那麼就要使用 連行符 吧,如 s2 he...