日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

python入門(mén)教程(六)字符串函數(shù)與文本分析

 靜幻堂 2018-09-14
極客饕餮 2018-09-13 20:31:15
python入門(mén)教程(六)字符串函數(shù)與文本分析

ラムジ - PLANET.mp3

04:07.537000000000006

來(lái)自極客饕餮

一 字符串函數(shù)

python包含許多有用的內(nèi)置函數(shù)和方法來(lái)完成常見(jiàn)的任務(wù).

join-以另一個(gè)字符串作為分隔符來(lái)連接字符串列表.(把一個(gè)字符串列表,轉(zhuǎn)換成了多個(gè)字符串)

replace-用一個(gè)字符串替換原字符串中的一個(gè)子字符串.

startswith和endswith-確定是否在字符串的開(kāi)始和結(jié)尾處有一個(gè)子字符串.

lower()方法字符串小寫(xiě). upper()方法字符串大寫(xiě).

split方法與join相反,把一個(gè)字符串轉(zhuǎn)換成列表.

例如:

print(",".join(["spam","eggs","ham"]))

打印"spam,eggs,ham"

print("hello,me".replace("me","world"))

打印"hello,world"

print("this is a sentence".shartswith("this"))

打印"True"

print("this is a sentence".endswith("sentence"))

打印"True"

print("spam,eggs,ham".split(","))

打印"['spam','eggs','ham']"

將字符串變成大寫(xiě):

a="Spam"

b=a.upper()

二 數(shù)字函數(shù)

要查找某些數(shù)字或列表的最大值或最小值,可以使用maxmin.

要將數(shù)字轉(zhuǎn)換成絕對(duì)值(該數(shù)字與0的距離),使用abs

要將數(shù)字四舍五入到一定位的小數(shù),使用round

要計(jì)算一個(gè)列表數(shù)字的總和,使用sum

三 列表函數(shù)

all和any將列表作為參數(shù),通常在條件語(yǔ)句中使用.

all列表中所有值均為T(mén)rue時(shí),結(jié)果為T(mén)rue,否則結(jié)果為False.

any列表中只要有一個(gè)為T(mén)rue,結(jié)果為T(mén)rue,反之結(jié)果為False.

enumerate函數(shù)可以用來(lái)同時(shí)迭代列表的值和索引.

例如:

nums=[55,44,33,22,11]

if all([i>5 for i in nums]):

print("all larger than 5")

if any([i%2==0 for i in nums]):

print("at least on is even")

for v in enumerate(nums):

print(v)

結(jié)果:

all larger than 5

at least one is even

(0,55)

(1,44)

(2,33)

(3,22)

(4,11)

四 文本分析器

這是一個(gè)示例項(xiàng)目,展示了一個(gè)分析示例文件以查找每個(gè)字符占用的文本百分比的程序.

本節(jié)介紹如何打開(kāi)和閱讀文件.

filename=input("輸入一個(gè)文件名:")

with open(filename) as f:

text=f.read()

print(text)

結(jié)果:

輸入一個(gè)文件名:test.txt

hello world

這是僅用于演示目的的示例內(nèi)容.

定義一個(gè)函數(shù),用來(lái)計(jì)算一個(gè)字符在字符串出現(xiàn)的次數(shù).

def count_char(text,char):

count=0

for c in text:

if c==char:

count+=1

return count

該函數(shù)以文件的文本和一個(gè)字符作為參數(shù),返回字符出現(xiàn)在文本中的次數(shù).

使用文件中獲取到的字符串和要查詢(xún)的字符查詢(xún):

filename=input("輸入一個(gè)文件名:")

with open(filename) as f:

text=f.read()

print(count_char(text,"r"))

程序的下一部分將查找每個(gè)字母占據(jù)文本的百分比.

for char in "abcdefghijklmnopqrstuvwxyz":

perc=100*count_char(text,char)/len(text)

print("{0}-{1}%".format(char,round(perc,2)))

最終的代碼如下:

def count_char(text,char)

count=0

for c in text:

if c==char:

count+=1

return count

filename=input("輸入一個(gè)文件名:")

with open(filename) as f:

text=f.read()

for char in "abcdefghijklmnopqrstuvwxyz"

perc=100*count_char(text,char)/len(text)

print("{0}-{1}%").format(char,round(perc,2))

大家可以復(fù)制過(guò)去測(cè)試一下.

    本站是提供個(gè)人知識(shí)管理的網(wǎng)絡(luò)存儲(chǔ)空間,所有內(nèi)容均由用戶(hù)發(fā)布,不代表本站觀點(diǎn)。請(qǐng)注意甄別內(nèi)容中的聯(lián)系方式、誘導(dǎo)購(gòu)買(mǎi)等信息,謹(jǐn)防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請(qǐng)點(diǎn)擊一鍵舉報(bào)。
    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶(hù) 評(píng)論公約

    類(lèi)似文章 更多