var1 = 'Hello World!' var2 = "Python Programming"
#!/usr/bin/python3 var1 = 'Hello World!' var2 = "Python Programming" print ("var1[0]: ", var1[0]) print ("var2[1:5]: ", var2[1:5])
var1[0]: H var2[1:5]: ytho
可以通過(guò)(再)分配給另一個(gè)字符串變量來(lái)“更新”現(xiàn)有的字符串。新的值可以相關(guān)聯(lián)它之前的值或使用另一個(gè)完全不同的字符串。例如 -
#!/usr/bin/python3 var1 = 'Hello World!' print ("Updated String :- ", var1[:6] + 'Python')
Updated String :- Hello Python
反斜線(xiàn)
符號(hào)
|
十六進(jìn)制
字符
|
描述 |
---|---|---|
\a | 0x07 |
響鈴或警報(bào)
|
\b | 0x08 |
Backspace鍵
|
\cx |
|
Control-x |
\C-x |
|
Control-x |
\e | 0x1b | Escape |
\f | 0x0c | Formfeed |
\M-\C-x |
|
Meta-Control-x |
\n | 0x0a | 新行 |
\nnn |
|
Octal notation, where n is in the range 0.7 |
\r | 0x0d | Carriage return |
\s | 0x20 | 空格 |
\t | 0x09 | Tab |
\v | 0x0b | Vertical tab |
\x |
|
Character x |
\xnn |
|
十六進(jìn)制表示法,其中n的范圍是從 0.9, a.f, 或 A.F |
操作符 | 描述 | 示例 |
---|---|---|
+ |
拼接 - 操作符兩邊值相連接
|
a + b =' HelloPython' |
* |
重復(fù) - 創(chuàng)建新的字符串,鏈接相同的字符串多個(gè)副本
|
a*2 = 'HelloHello' |
[] |
切片 - 提供從給定索引對(duì)應(yīng)的字符
|
a[1] = 'e' |
[ : ] |
范圍切片 - 提供從給定的范圍內(nèi)字符
|
a[1:4] =' ell' |
in |
成員操作符 - 如果一個(gè)字符在給定字符串中存在,則返回true
|
H in a = 1 |
not in |
成員操作符 - 如果一個(gè)字符在給定的字符串中不存在,則返回true
|
M not in = 1 |
r/R | 原始字符串 - 禁止轉(zhuǎn)義字符實(shí)際意義。 字母“r”這是引號(hào)前導(dǎo)。 | print r'\n' 打印 \n , print R'\n' 打印 \n |
% |
格式 - 執(zhí)行字符串格式化
|
參見(jiàn)下一節(jié)
|
Python有一個(gè)最酷的功能是字符串格式運(yùn)算符%。這個(gè)操作符對(duì)于字符串是是唯一的,并填補(bǔ)了 C語(yǔ)言中 printf()系列函數(shù)。下面是一個(gè)簡(jiǎn)單的例子-
#!/usr/bin/python3 print ("My name is %s and weight is %d kg!" % ('Zara', 21))
My name is Zara and weight is 21 kg!
格式符號(hào)
|
轉(zhuǎn)變
|
---|---|
%c | 字符 |
%s |
通過(guò)str()來(lái)轉(zhuǎn)換格式化字符串
|
%i |
有符號(hào)十進(jìn)制整數(shù)
|
%d |
有符號(hào)十進(jìn)制整數(shù)
|
%u |
無(wú)符號(hào)十進(jìn)制整數(shù)
|
%o |
八進(jìn)制整數(shù)
|
%x |
十六進(jìn)制整數(shù)(小寫(xiě)字母)
|
%X |
十六進(jìn)制整數(shù)(大寫(xiě)字母)
|
%e |
指數(shù)符號(hào)(小寫(xiě)“e”)
|
%E |
指數(shù)計(jì)數(shù)法(以大寫(xiě)“E”)
|
%f |
浮點(diǎn)實(shí)數(shù)
|
%g |
%f和%e的簡(jiǎn)寫(xiě)
|
%G |
%f和%E的簡(jiǎn)寫(xiě)
|
符號(hào) | 功能描述 |
---|---|
* |
參數(shù)指定寬度或精度
|
- |
左對(duì)齊
|
+ |
顯示符號(hào)
|
<sp> |
在一個(gè)正數(shù)前留一個(gè)空格
|
# |
添加前導(dǎo)零('0')八進(jìn)制或前導(dǎo)0x“或”0X“十六進(jìn)制,取決于是否使用了'x'或'X'。
|
0 |
墊留下了零(而不是空格)
|
% |
'%%'保留一個(gè)常量“%”
|
(var) |
映射變量(字典參數(shù))
|
m.n. |
m是最小總寬度和n是小數(shù)點(diǎn)后顯示數(shù)量(如果appl)
|
#!/usr/bin/python3 para_str = """this is a long string that is made up of several lines and non-printable characters such as TAB ( \t ) and they will show up that way when displayed. NEWLINEs within the string, whether explicitly given like this within the brackets [ \n ], or just a NEWLINE within the variable assignment will also show up. """ print (para_str)
當(dāng)執(zhí)行上面的代碼,它產(chǎn)生了以下結(jié)果。注意,如何每一個(gè)特殊字符已經(jīng)轉(zhuǎn)換到它的打印形式,一直到最后的NEWLINE之間的字符串的結(jié)尾關(guān)閉三重引號(hào)。還要注意的是出現(xiàn)新行或者使用一行或末尾明確回車(chē)其換碼(\ n)-
this is a long string that is made up of several lines and non-printable characters such as TAB ( ) and they will show up that way when displayed. NEWLINEs within the string, whether explicitly given like this within the brackets [ ], or just a NEWLINE within the variable assignment will also show up.
原始字符串不會(huì)把反斜杠作為一個(gè)特殊字符。 把一個(gè)原始字符串中的每個(gè)字符保持原來(lái)編寫(xiě)的方式 -
#!/usr/bin/python3 ( print ('C:\\nowhere')
C:\nowhere
#!/usr/bin/python3 print (r'C:\\nowhere')
C:\\nowhere
在Python 3,所有的字符串都是以Unicode表示。在Python2中內(nèi)部存儲(chǔ)為8位ASCII,因此,它需要附上“u”以讓明確使用的是Unicode。但在Python3 中現(xiàn)在不再是必要的。
SN |
方法及描述
|
---|---|
1 |
將字符串的第一個(gè)字母大寫(xiě)
|
2 |
返回以fillchar填充的字符串以及原始字符串中心到總 width 列
|
3 |
count(str, beg= 0,end=len(string))
計(jì)數(shù)str有多少次出現(xiàn)在在字符串中;或如果開(kāi)始索引beg和結(jié)束索引 end 給出,則計(jì)算子字符串在一個(gè)字符串中出現(xiàn)的次數(shù)
|
4 | 利用注冊(cè)編解碼器解碼編碼字符串。編碼默認(rèn)是系統(tǒng)默認(rèn)字符串編碼 |
5 | 返回字符串的編碼字符串版本; 在出錯(cuò)時(shí),默認(rèn)引發(fā) ValueError 錯(cuò)誤,除非用“ignore”或“replace” |
6 |
endswith(suffix, beg=0, end=len(string)) 確定是否字符串或字符串的子串(如果開(kāi)始索引beg和結(jié)束索引end給出)以 suffix 結(jié)束; 如果是這樣返回true,否則為false |
7 | 擴(kuò)展制表符字符串到多個(gè)空格; 默認(rèn)每個(gè)制表符為8個(gè)空格,如果不提供制表符的大小 |
8 |
find(str, beg=0 end=len(string))
確定是否在字符串或字符串找到一個(gè)子字符str(如果開(kāi)始索引beg和結(jié)束索引end給出),如果找到則返回索引,否則返回-1
|
9 |
index(str, beg=0, end=len(string))
同 find()方法,如果str沒(méi)有找到則引發(fā)異常
|
10 |
如果string至少有1個(gè)字符,所有字符是字母數(shù)字則返回true,否則返回false
|
11 |
如果string至少有1個(gè)字符,所有字符是字母則返回true,否則為false
|
12 |
如果字符串僅包含數(shù)字返回true,否則為false
|
13 |
如果string至少有1個(gè)可轉(zhuǎn)大小寫(xiě)字符,所有可轉(zhuǎn)大小字符是小寫(xiě)字母則返回true,否則為false
|
14 |
如果一個(gè)Unicode字符串只包含數(shù)字字符則返回true,否則為false
|
15 |
如果字符串只包含空格字符則返回true,否則為false
|
16 |
如果字符串是否正確“titlecased”(首字母大寫(xiě))返回true,否則為false
|
17 | 如果string至少有1個(gè)可轉(zhuǎn)大小寫(xiě)字符,所有可轉(zhuǎn)大小字符是大寫(xiě)字母則返回true,否則為false |
18 |
合并(符連接)序列 seq 融入一個(gè)字符串,以及使用分隔符字符串的字符串表示。
|
19 |
返回字符串的長(zhǎng)度
|
20 |
返回一個(gè)空格填充字符串與原字符串左對(duì)齊到總寬度列
|
21 |
字符串中所有大寫(xiě)字母轉(zhuǎn)換為小寫(xiě)
|
22 |
刪除字符串的所有前導(dǎo)空格
|
23 |
返回要在轉(zhuǎn)換函數(shù)使用的轉(zhuǎn)換表
|
24 |
從字符串str返回最大拼音/字母字符
|
25 |
上一篇:Python3 os文件目錄的方法下一篇:Python3斷言
|