1. python 讀寫文件,計數
a.txt文件內容 I'm a boy.
python代碼:
#coding: utf-8
import sys
import re
import collections
reload(sys)
sys.setdefaultencoding('utf8')
file_object = open('a.txt')
try:
all_the_text = file_object.read( )
str1 = re.sub('[^a-zA-Z]', ' ', all_the_text)
str2 = str(re.split(' ',str1))[1:-4].split(' ')
m = collections.Counter(str2)
for i in range(len(m)):
a = list(m.elements())[i]+str(m[list(m.elements())[i]])+'\n'
f = file("b.txt", "a+")
f.write(a)
finally:
f.close()
file_object.close( )
出來的結果是這樣
'I',1
'boy',1
'm',1
'a',1
2. 急!請問用python怎麼計數
my_word = raw_input("請輸入一個單詞? ")
a_num = my_word.count("a")
e_num = my_word.count("e")
i_num = my_word.count("i")
o_num = my_word.count("o")
u_num = my_word.count("u")
print "你的句子里有",a_num,"個a,",e_num,"個e,",i_num,"個i,",o_num,"個o,",u_num,"個u!"
3. 求python文本分析腳本,讀取、顯示、計數匹配條件行數。
#!/usr/bin/envpython
file_name='./log'#指定文件
stat={'+':0,'-':0}
f=open(file_name)
forlineinf:
ifline[0]in['+','-']:
stat[line[0]]+=1
print(line.rstrip())
print(" total:")
print("+: "+str(stat['+']))
print("-: "+str(stat['-']))
4. python函數統計字元串中字母數學其他字元的個數
代碼如下:
text = "Hello Python,Hello 2021."
letter = 0
digital = 0
other = 0
for i in text:
if i.isalpha():
letter += 1
elif i.isdigit():
digital += 1
else:
other += 1
print('字母:{} 數字:{} 其他:{}'.format(letter,digital,other))
輸出:
字母:16 數字:4 其他:4
下面是Python內置關於判斷字元串類型的方法介紹:
str.isalnum()
如果字元串中的所有字元都是字母或數字且至少有一個字元,則返回True, 否則返回False。 如果c.isalpha(),c.isdecimal(),c.isdigit(),或c.isnumeric()之中有一個返回True,則字元``c``是字母或數字。
str.isalpha()
如果字元串中的所有字元都是字母,並且至少有一個字元,返回True,否則返回False。字母字元是指那些在 Unicode 字元資料庫中定義為 "Letter" 的字元,即那些具有 "Lm"、"Lt"、"Lu"、"Ll" 或 "Lo" 之一的通用類別屬性的字元。 注意,這與 Unicode 標准中定義的"字母"屬性不同。
str.isascii()
如果字元串為空或字元串中的所有字元都是 ASCII ,返回True,否則返回False。ASCII 字元的碼點范圍是 U+0000-U+007F 。
3.7 新版功能.
str.isdecimal()
如果字元串中的所有字元都是十進制字元且該字元串至少有一個字元,則返回True, 否則返回False。十進制字元指那些可以用來組成10進制數字的字元,例如 U+0660 ,即阿拉伯字母數字0 。 嚴格地講,十進制字元是 Unicode 通用類別 "Nd" 中的一個字元。
str.isdigit()
如果字元串中的所有字元都是數字,並且至少有一個字元,返回True,否則返回False。 數字包括十進制字元和需要特殊處理的數字,如兼容性上標數字。這包括了不能用來組成 10 進制數的數字,如 Kharosthi 數。 嚴格地講,數字是指屬性值為 Numeric_Type=Digit 或 Numeric_Type=Decimal 的字元。
str.isidentifier()
如果字元串是有效的標識符,返回True,依據語言定義,標識符和關鍵位元組。
調用keyword.iskeyword()來檢測字元串s是否為保留標識符,例如def和class。
5. python expandtabs().splitlines(),最近在看python一個計數文件行數的代碼,可是看不懂這個函數的作用
lines=docstring.expandtabs().splitlines()
首先,docstring是字元串(string)。
然後,string.expandtabs()是將字元串裡面的tab製表符換成空格,如果沒有指定tabsize參數,默認一個tab轉化成8個空格。
(這是help裡面的說明:Return a of S where all tab characters are expanded using spaces.If tabsize is not given, a tab size of 8 characters is assumed.)
之後,string.splitlines()是將一串字元串按行分割,並返回分割後的列表(list)。