Python translator使用實(shí)例
更新時(shí)間:2008年09月06日 13:44:27 作者:
translator實(shí)例應(yīng)用代碼
1.string.maketrans設(shè)置字符串轉(zhuǎn)換規(guī)則表(translation table)
allchars = string.maketrans('', '')#所有的字符串,即不替換字符串
aTob = string.maketrans('a','b')#將字符a轉(zhuǎn)換為字符b
2.translate函數(shù)進(jìn)行字符串的替換和刪除,第一個(gè)參數(shù)是字符串轉(zhuǎn)換規(guī)則表(translation table),第二個(gè)參數(shù)是要?jiǎng)h除的字符串。比如,要將字符串s中的所有e替換為a,同時(shí)要?jiǎng)h除所有的o
aTob = string.maketrans('e','a')
s = 'hello python'
print s.translate(aTob, 'o')
輸出結(jié)果:
hall pythn
3.假如我們這樣使用
allchars = string.maketrans('', '')
k = allchars.translate(allchars, 'a')
allchars表示所有的字符串,而k表示從所有的字符串中去除掉字符a,就是說(shuō)所有的字符,除了a,因此,我們?cè)僬{(diào)用如下方法時(shí):
s = 'abc'
print s.translate(allchars, k)
字面意思是,輸出“字符串s中除去任何不是字符a的字符",即,只輸出字符a,因此輸出結(jié)果為:
a
4.現(xiàn)在,已經(jīng)不難理解下面這個(gè)函數(shù)了
import string
def translator(frm='', to='', delete='', keep=None):
if len(to) == 1:
to = to * len(frm)
trans = string.maketrans(frm, to)
if keep is not None:
allchars = string.maketrans('', '')
delete = allchars.translate(allchars, keep.translate(allchars, delete))
def translate(s):
return s.translate(trans, delete)
return translate調(diào)用:
digits_only = translator(keep=string.digits)
print digits_only('Chris Perkins : 224-7992')
digits_to_hash = translator(frm=string.digits, to='#')
print digits_to_hash('Chris Perkins : 224-7992')
輸出結(jié)果:
2247992
Chris Perkins : ###-####
復(fù)制代碼 代碼如下:
allchars = string.maketrans('', '')#所有的字符串,即不替換字符串
aTob = string.maketrans('a','b')#將字符a轉(zhuǎn)換為字符b
2.translate函數(shù)進(jìn)行字符串的替換和刪除,第一個(gè)參數(shù)是字符串轉(zhuǎn)換規(guī)則表(translation table),第二個(gè)參數(shù)是要?jiǎng)h除的字符串。比如,要將字符串s中的所有e替換為a,同時(shí)要?jiǎng)h除所有的o
復(fù)制代碼 代碼如下:
aTob = string.maketrans('e','a')
s = 'hello python'
print s.translate(aTob, 'o')
輸出結(jié)果:
hall pythn
3.假如我們這樣使用
復(fù)制代碼 代碼如下:
allchars = string.maketrans('', '')
k = allchars.translate(allchars, 'a')
allchars表示所有的字符串,而k表示從所有的字符串中去除掉字符a,就是說(shuō)所有的字符,除了a,因此,我們?cè)僬{(diào)用如下方法時(shí):
復(fù)制代碼 代碼如下:
s = 'abc'
print s.translate(allchars, k)
字面意思是,輸出“字符串s中除去任何不是字符a的字符",即,只輸出字符a,因此輸出結(jié)果為:
a
4.現(xiàn)在,已經(jīng)不難理解下面這個(gè)函數(shù)了
復(fù)制代碼 代碼如下:
import string
def translator(frm='', to='', delete='', keep=None):
if len(to) == 1:
to = to * len(frm)
trans = string.maketrans(frm, to)
if keep is not None:
allchars = string.maketrans('', '')
delete = allchars.translate(allchars, keep.translate(allchars, delete))
def translate(s):
return s.translate(trans, delete)
return translate調(diào)用:
復(fù)制代碼 代碼如下:
digits_only = translator(keep=string.digits)
print digits_only('Chris Perkins : 224-7992')
digits_to_hash = translator(frm=string.digits, to='#')
print digits_to_hash('Chris Perkins : 224-7992')
輸出結(jié)果:
2247992
Chris Perkins : ###-####
相關(guān)文章
Python3中的tuple函數(shù)知識(shí)點(diǎn)講解
在本篇文章里小編給大家整理了一篇關(guān)于Python3中的tuple函數(shù)知識(shí)點(diǎn)講解內(nèi)容,有興趣的朋友們可以學(xué)習(xí)參考下。2021-01-01
Python處理application/json錯(cuò)誤的方法詳解
這篇文章主要為大家詳細(xì)介紹了python使用httpx_sse調(diào)用sse流式接口對(duì)響應(yīng)格式為application/json的錯(cuò)誤信息處理的相關(guān)知識(shí),需要的可以了解下2025-02-02
Python報(bào)錯(cuò)TypeError: unsupported operand的問(wèn)題分析和解決方法
TypeError: unsupported operand 是Python中常見(jiàn)的一類(lèi)錯(cuò)誤,通常在嘗試對(duì)不兼容的數(shù)據(jù)類(lèi)型進(jìn)行操作時(shí)發(fā)生,比如,當(dāng)你嘗試對(duì)字符串和整數(shù)進(jìn)行加法操作時(shí),Python會(huì)拋出這一錯(cuò)誤,所以本文給大家介紹了Python報(bào)錯(cuò)TypeError: unsupported operand的問(wèn)題解決2024-09-09
Python 提取dict轉(zhuǎn)換為xml/json/table并輸出的實(shí)現(xiàn)代碼
這篇文章主要介紹了Python 提取dict轉(zhuǎn)換為xml/json/table并輸出的實(shí)現(xiàn)代碼,需要的朋友可以參考下2016-08-08
python3 圖片referer防盜鏈的實(shí)現(xiàn)方法
本篇文章主要介紹了python3 圖片referer防盜鏈的實(shí)現(xiàn)方法,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-03-03

