python執行字元串python
『壹』 python字元串處理
可以使用split方法用/分割字元串
s='鏈接'
s.split('/')[-1]
『貳』 python 文本字元串接
python中有很多字元串連接方式,今天在寫代碼,順便總結一下:
最原始的字元串連接方式:str1 + str2
python 新字元串連接語法:str1, str2
奇怪的字元串方式:str1 str2
% 連接字元串:『name:%s; sex: ' % ('tom', 'male')
字元串列表連接:str.join(some_list)
第一種,想必只要是有編程經驗的人,估計都知道,直接用 「+」 來連接兩個字元串:
'Jim' + 'Green' = 'JimGreen'
第二種比較特殊,如果兩個字元串用「逗號」隔開,那麼這兩個字元串將被連接,但是,字元串之間會多出一個空格:
'Jim', 'Green' = 'Jim Green'
第三種也是 python 獨有的,只要把兩個字元串放在一起,中間有空白或者沒有空白:兩個字元串自動連接為一個字元串:
'Jim''Green' = 'JimGreen'
'Jim' 'Green' = 'JimGreen'
第四種功能比較強大,借鑒了C語言中 printf 函數的功能,如果你有C語言基礎,看下文檔就知道了。這種方式用符號「%」連接一個字元串和一組變數,字元串中的特殊標記會被自動用右邊變數組中的變數替換:
'%s, %s' % ('Jim', 'Green') = 'Jim, Green'
第五種就屬於技巧了,利用字元串的函數 join 。這個函數接受一個列表,然後用字元串依次連接列表中每一個元素:
var_list = ['tom', 'david', 'john']
a = '###'
a.join(var_list) = 'tom###david###john'
其實,python 中還有一種字元串連接方式,不過用的不多,就是字元串乘法,如:
a = 'abc'
a * 3 = 'abcabcabc'
『叄』 Python怎麼把字元串轉
轉成數字直接用int(str)或者float(str)
字元串內建函數
1
capitalize()
將字元串的第一個字元轉換為大寫
2
center(width, fillchar)
返回一個指定的寬度 width 居中的字元串,fillchar 為填充的字元,默認為空格。
3
count(str, beg= 0,end=len(string))
返回 str 在 string 裡面出現的次數,如果 beg 或者 end 指定則返回指定范圍內 str 出現的次數
4
bytes.decode(encoding="utf-8", errors="strict")
Python3 中沒有 decode 方法,但我們可以使用 bytes 對象的 decode() 方法來解碼給定的 bytes 對象,這個 bytes 對象可以由 str.encode() 來編碼返回。
5
encode(encoding='UTF-8',errors='strict')
以 encoding 指定的編碼格式編碼字元串,如果出錯默認報一個ValueError 的異常,除非 errors 指定的是'ignore'或者'replace'
6
endswith(suffix, beg=0, end=len(string))
檢查字元串是否以 obj 結束,如果beg 或者 end 指定則檢查指定的范圍內是否以 obj 結束,如果是,返回 True,否則返回 False.
7
expandtabs(tabsize=8)
把字元串 string 中的 tab 符號轉為空格,tab 符號默認的空格數是 8 。
8
find(str, beg=0 end=len(string))
檢測 str 是否包含在字元串中,如果指定范圍 beg 和 end ,則檢查是否包含在指定范圍內,如果包含返回開始的索引值,否則返回-1
9
index(str, beg=0, end=len(string))
跟find()方法一樣,只不過如果str不在字元串中會報一個異常.
10
isalnum()
如果字元串至少有一個字元並且所有字元都是字母或數字則返 回 True,否則返回 False
11
isalpha()
如果字元串至少有一個字元並且所有字元都是字母則返回 True, 否則返回 False
12
isdigit()
如果字元串只包含數字則返回 True 否則返回 False..
13
islower()
如果字元串中包含至少一個區分大小寫的字元,並且所有這些(區分大小寫的)字元都是小寫,則返回 True,否則返回 False
14
isnumeric()
如果字元串中只包含數字字元,則返回 True,否則返回 False
15
isspace()
如果字元串中只包含空白,則返回 True,否則返回 False.
16
istitle()
如果字元串是標題化的(見 title())則返回 True,否則返回 False
17
isupper()
如果字元串中包含至少一個區分大小寫的字元,並且所有這些(區分大小寫的)字元都是大寫,則返回 True,否則返回 False
18
join(seq)
以指定字元串作為分隔符,將 seq 中所有的元素(的字元串表示)合並為一個新的字元串
19
len(string)
返回字元串長度
20
ljust(width[, fillchar])
返回一個原字元串左對齊,並使用 fillchar 填充至長度 width 的新字元串,fillchar 默認為空格。
21
lower()
轉換字元串中所有大寫字元為小寫.
22
lstrip()
截掉字元串左邊的空格或指定字元。
23
maketrans()
創建字元映射的轉換表,對於接受兩個參數的最簡單的調用方式,第一個參數是字元串,表示需要轉換的字元,第二個參數也是字元串表示轉換的目標。
24
max(str)
返回字元串 str 中最大的字母。
25
min(str)
返回字元串 str 中最小的字母。
26
replace(old, new [, max])
把 將字元串中的 str1 替換成 str2,如果 max 指定,則替換不超過 max 次。
27
rfind(str, beg=0,end=len(string))
類似於 find()函數,不過是從右邊開始查找.
28
rindex( str, beg=0, end=len(string))
類似於 index(),不過是從右邊開始.
29
rjust(width,[, fillchar])
返回一個原字元串右對齊,並使用fillchar(默認空格)填充至長度 width 的新字元串
30
rstrip()
刪除字元串字元串末尾的空格.
31
split(str="", num=string.count(str))
num=string.count(str)) 以 str 為分隔符截取字元串,如果 num 有指定值,則僅截取 num 個子字元串
32
splitlines([keepends])
按照行('\r', '\r\n', \n')分隔,返回一個包含各行作為元素的列表,如果參數 keepends 為 False,不包含換行符,如果為 True,則保留換行符。
33
startswith(str, beg=0,end=len(string))
檢查字元串是否是以 obj 開頭,是則返回 True,否則返回 False。如果beg 和 end 指定值,則在指定范圍內檢查。
34
strip([chars])
在字元串上執行 lstrip()和 rstrip()
35
swapcase()
將字元串中大寫轉換為小寫,小寫轉換為大寫
36
title()
返回"標題化"的字元串,就是說所有單詞都是以大寫開始,其餘字母均為小寫(見 istitle())
37
translate(table, deletechars="")
根據 str 給出的表(包含 256 個字元)轉換 string 的字元, 要過濾掉的字元放到 deletechars 參數中
38
upper()
轉換字元串中的小寫字母為大寫
39
zfill (width)
返回長度為 width 的字元串,原字元串右對齊,前面填充0
40
isdecimal()
檢查字元串是否只包含十進制字元,如果是返回 true,否則返回 false。
『肆』 python中如何在函數中把字元串中的global語句執行
[root@-xlPythonTest]#vimstu.py
#!/usr/bin/python
#coding=utf-8
scope={}
defaddstu():
code=raw_input('請輸入學生的學號')
exec('d'+code+'='+code)inscope
printscope['d'+code]
addstu()
[root@-xlPythonTest]#pythonstu.py
請輸入學生的學號123
123
法二:傳參數也行
#!/usr/bin/python
#coding=utf-8
defaddstu(scope):
code=raw_input('請輸入學生的學號:')
scope['d'+code]=code
printscope['d'+code]
scope={}
addstu(scope)
printscope
[root@-xlPythonTest]#pythonstu.py
請輸入學生的學號:456
456
{'d456':'456'}
『伍』 python用字元串拼接一條語句,然後怎麼執行
python支持eval函數,可以把一個字元串當作python語句執行,具體你可以看看eval函數的使用方法
『陸』 什麼是字元串Python
字元串
python 中的字元串由單引號或雙引號括起。
'hello' 等同於 "hello"。
您可以使用 print() 函數顯示字元串:
實例
print("Hello")
print('Hello')
『柒』 如何進行Python字元串操作
它合理地結合了高性能與使得編寫程序簡單有趣的特色,下面講述python字元串操作流程。要使用string的方法要先import,但後來由於眾多的python使用者的建議,從python2.0開始, string方法改為用S.method()的形式調用,只要S是一個字元串對象就可以這樣使用,而不用import。同時為了保持向後兼容,現在的Python中仍然保留了一個string的mole。闡述編制Python程序相關注意什麼是Python 解釋器及其使用?深度剖析Python Web 應用程序怎樣正確安裝Python?淺析Python中的Python全局變數其中定義的方法與python字元串操作是相同的,這些方法都最後都指向了用S.method ()調用的函數。要注意,S.method()能調用的方法比string的mole中的多,比如isdigit()、istitle()等就只能用 S.method()的方式調用。 對一個字元串對象,首先想到的操作可能就是計算它有多少個字元組成,很容易想到用S.len(),但這是錯的,應該是len(S)。因為len()是內置函數,包括在__builtin__模塊中。python字元串操作不把len()包含在string類型中,乍看起來好像有點不可理解,其實一切有其合理的邏輯在里頭。len()不僅可以計算字元串中的字元數。還可以計算 list的成員數,tuple的成員數等等,因此單單把len()算在string里是不合適,因此一是可以把len()作為通用函數。用重載實現對不同類型的操作,還有就是可以在每種有len()運算的類型中都要包含一個len()函數。 Python選擇的是第一種解決辦法。類似的還有str(arg)函數,它把arg用string類型表示出來。 字元串中字元大小寫的變換:S.lower() #小寫 S.upper() #大寫 S.swapcase() #大小寫互換 S.capitalize() #首字母大寫 String.capwords(S) 字元串在輸出時的對齊:S.lower() #小寫 S.upper() #大寫 S.swapcase() #大小寫互換 S.capitalize() #首字母大寫 String.capwords(S) 字元串中的搜索和替換:S.lower() #小寫 S.upper() #大寫 S.swapcase() #大小寫互換 S.capitalize() #首字母大寫 String.capwords(S) 使用上面的函數產後的翻譯表,把S進行翻譯,並把deletechars中有的字元刪掉。需要注意的是,如果S為unicode字元串,那麼就不支持 deletechars參數。可以使用把某個字元翻譯為python字元串操作的方式實現相同的功能。此外還可以使用codecs模塊的功能來創建更加功能強大的翻譯表。
『捌』 Python字元串匹配6種方法的使用
1. re.match 嘗試從字元串的起始位置匹配一個模式,如果不是起始位置匹配成功的話,match()就返回none。
import re
line="this hdr-biz 123 model server 456"
pattern=r"123"
matchObj = re.match( pattern, line)
2. re.search 掃描整個字元串並返回第一個成功的匹配。
import re
line="this hdr-biz model server"
pattern=r"hdr-biz"
m = re.search(pattern, line)
3. Python 的re模塊提供了re.sub用於替換字元串中的匹配項。
import re
line="this hdr-biz model args= server"
patt=r'args='
name = re.sub(patt, "", line)
4. compile 函數用於編譯正則表達式,生成一個正則表達式( Pattern )對象,供 match() 和 search() 這兩個函數使用。
import re
pattern = re.compile(r'd+')
5. re.findall 在字元串中找到正則表達式所匹配的所有子串,並返回一個列表,如果沒有找到匹配的,則返回空列表。
import re
line="this hdr-biz model args= server"
patt=r'server'
pattern = re.compile(patt)
result = pattern.findall(line)
6. re.finditer 和 findall 類似,在字元串中找到正則表達式所匹配的所有子串,並把它們作為一個迭代器返回。
import re
it = re.finditer(r"d+","12a32bc43jf3")
for match in it:
print (match.group() )
關於Python字元串匹配6種方法的使用,青藤小編就和您分享到這里了。如果您對python編程有濃厚的興趣,希望這篇文章可以為您提供幫助。如果您還想了解更多關於python編程的技巧及素材等內容,可以點擊本站的其他文章進行學習。
以上是小編為大家分享的關於Python字元串匹配6種方法的使用的相關內容,更多信息可以關注環球青藤分享更多干貨
『玖』 Python字元串是什麼,如何使用
字元串的表示
字元串可以被成對的單引號(single quote)或雙引號(double quotes)包圍起來,這兩者的作用是一樣的:
更多關於Python的基礎性知識可以看下這個網頁的視頻教程,Python常見的數據類型及使用方法掌握,希望我的回答能幫到你。