Python 字符串
字符串是 Python 中最常用的數(shù)據(jù)類型橘原。我們可以使用引號('或")來創(chuàng)建字符串利赋。
創(chuàng)建字符串很簡單郁惜,只要為變量分配一個值即可堡距。例如:
Python 訪問字符串中的值
Python 不支持單字符類型,單字符在 Python 中也是作為一個字符串使用兆蕉。
Python 訪問子字符串羽戒,可以使用方括號來截取字符串:
Python 字符串連接
我們可以對字符串進(jìn)行截取并與其他字符串進(jìn)行連接,如下實(shí)例:
Python 轉(zhuǎn)義字符
在需要在字符中使用特殊字符時(shí)虎韵,python 用反斜杠 \ 轉(zhuǎn)義字符易稠。如下表:
轉(zhuǎn)義字符 | 描述 |
---|---|
(在行尾時(shí)) | 續(xù)行符 |
\ | 反斜杠符號 |
' | 單引號 |
" | 雙引號 |
\a | 響鈴 |
\b | 退格(Backspace) |
\e | 轉(zhuǎn)義 |
\000 | 空 |
\n | 換行 |
\v | 縱向制表符 |
\t | 橫向制表符 |
\r | 回車 |
\f | 換頁 |
\oyy | 八進(jìn)制數(shù),yy代表的字符包蓝,例如:\o12代表換行 |
\xyy | 十六進(jìn)制數(shù)驶社,yy代表的字符企量,例如:\x0a代表換行 |
\other | 其它的字符以普通格式輸出 |
Python字符串運(yùn)算符
下表實(shí)例變量 a 值為字符串 "Hello",b 變量值為 "Python":
| 操作符 | 描述 | 實(shí)例 |
| + | 字符串連接 |
a + b 'HelloPython'
|
| * | 重復(fù)輸出字符串 |
a * 2 'HelloHello'
|
| [] | 通過索引獲取字符串中字符 |
a[1] 'e'
|
| [ : ] | 截取字符串中的一部分 |
a[1:4] 'ell'
|
| in | 成員運(yùn)算符 - 如果字符串中包含給定的字符返回 True |
"H" in a True
|
| not in | 成員運(yùn)算符 - 如果字符串中不包含給定的字符返回 True |
"M" not in a True
|
| r/R | 原始字符串 - 原始字符串:所有的字符串都是直接按照字面的意思來使用亡电,沒有轉(zhuǎn)義特殊或不能打印的字符届巩。 原始字符串除在字符串的第一個引號前加上字母"r"(可以大小寫)以外,與普通字符串有著幾乎完全相同的語法份乒。 |
print r'\n' \n >>> print R'\n' \n
|
| % | 格式字符串 | 請看下一章節(jié) |
Python 字符串格式化
Python 支持格式化字符串的輸出 恕汇。盡管這樣可能會用到非常復(fù)雜的表達(dá)式,但最基本的用法是將一個值插入到一個有字符串格式符 %s 的字符串中或辖。
在 Python 中瘾英,字符串格式化使用與 C 中 sprintf 函數(shù)一樣的語法。
如下實(shí)例:
以上實(shí)例輸出結(jié)果:
python 字符串格式化符號:
| 符 號 | 描述 |
| %c | 格式化字符及其ASCII碼 |
| %s | 格式化字符串 |
| %d | 格式化整數(shù) |
| %u | 格式化無符號整型 |
| %o | 格式化無符號八進(jìn)制數(shù) |
| %x | 格式化無符號十六進(jìn)制數(shù) |
| %X | 格式化無符號十六進(jìn)制數(shù)(大寫) |
| %f | 格式化浮點(diǎn)數(shù)字孝凌,可指定小數(shù)點(diǎn)后的精度 |
| %e | 用科學(xué)計(jì)數(shù)法格式化浮點(diǎn)數(shù) |
| %E | 作用同%e方咆,用科學(xué)計(jì)數(shù)法格式化浮點(diǎn)數(shù) |
| %g | %f和%e的簡寫 |
| %G | %F 和 %E 的簡寫 |
| %p | 用十六進(jìn)制數(shù)格式化變量的地址 |
格式化操作符輔助指令:
| 符號 | 功能 |
| * | 定義寬度或者小數(shù)點(diǎn)精度 |
| - | 用做左對齊 |
| + | 在正數(shù)前面顯示加號( + ) |
| <sp> | 在正數(shù)前面顯示空格 |
| # | 在八進(jìn)制數(shù)前面顯示零('0'),在十六進(jìn)制前面顯示'0x'或者'0X'(取決于用的是'x'還是'X') |
| 0 | 顯示的數(shù)字前面填充'0'而不是默認(rèn)的空格 |
| % | '%%'輸出一個單一的'%' |
| (var) | 映射變量(字典參數(shù)) |
| m.n. | m 是顯示的最小總寬度,n 是小數(shù)點(diǎn)后的位數(shù)(如果可用的話) |
Python2.6 開始蟀架,新增了一種格式化字符串的函數(shù) str.format()瓣赂,它增強(qiáng)了字符串格式化的功能。
Python三引號(triple quotes)
python中三引號可以將復(fù)雜的字符串進(jìn)行復(fù)制:
python三引號允許一個字符串跨多行片拍,字符串中可以包含換行符煌集、制表符以及其他特殊字符。
三引號的語法是一對連續(xù)的單引號或者雙引號(通常都是成對的用)捌省。
三引號讓程序員從引號和特殊字符串的泥潭里面解脫出來苫纤,自始至終保持一小塊字符串的格式是所謂的WYSIWYG(所見即所得)格式的。
一個典型的用例是纲缓,當(dāng)你需要一塊HTML或者SQL時(shí)卷拘,這時(shí)當(dāng)用三引號標(biāo)記,使用傳統(tǒng)的轉(zhuǎn)義字符體系將十分費(fèi)神祝高。
Unicode 字符串
Python 中定義一個 Unicode 字符串和定義一個普通字符串一樣簡單:
引號前小寫的"u"表示這里創(chuàng)建的是一個 Unicode 字符串栗弟。如果你想加入一個特殊字符,可以使用 Python 的 Unicode-Escape 編碼工闺。如下例所示:
被替換的 \u0020 標(biāo)識表示在給定位置插入編碼值為 0x0020 的 Unicode 字符(空格符)乍赫。