python—⽂件和数据(⽂件⾏数⽂件字符分布)⽂件⾏数
描述
打印输出附件⽂件的有效⾏数,注意:空⾏不计算为有效⾏数。
⽂件下载地址:
f = open("latex.log","r")
count = 0
for i in f:
line = i.strip("\n") #以回车为分隔,代表⼀⾏
if len(line) == 0: #空⾏不计算
continue
else:
count = count+1
print("共{}⾏".format(count))
⽂件字符分布
描述
统计附件⽂件的⼩写字母a-z的字符分布,即出现a-z字符的数量,并输出结果。
同时请输出⽂件⼀共包含的字符数量。
注意输出格式,各元素之间⽤英⽂逗号(,)分隔。
答案可能包含a-z共26个字符的分布,如果某个字符没有出现,则不显⽰,输出顺序a-z顺序。
f = open("latex.log")
count = 0
d = {}
for line in f: #第⼀次遍历是每⼀⾏数据
for c in line: #遍历每个字母
d[c] = d.get(c, 0) + 1 #⽤字典get⽅法计算字母出现个数,当遇见空格或其它符号,返回0
count = count+1
print("共{}字符".format(count), end="") #打印总数
for i in range(26):
print(",{}:{}".format(chr(ord('a')+i), d[chr(ord('a')+i)]), end="")
#上⾯已经计算完了,这⼀步主要是排序a-z共26个字母,先遍历出26字母当做字典中的key,查对应的值。把字母转换成ascii码才能相加,加完再转回去。
⽂件独特⾏数
描述
统计附件⽂件中与其他任何其他⾏都不同的⾏的数量,即独特⾏的数量。
f = open("latex.log","r")
ls = f.readlines()
s = set(ls)
for i in s:
t = set(ls)
print("共{}独特⾏".format(len(s)-len(t)))
⼀个dao“副本”,
⽐如两个“abc”,还保留了⼀个在集合中,所以内要将这些重复⾏的“副本”也去掉容才⾏。
CSV格式列变换
描述
附件是⼀个CSV⽂件,请将每⾏按照列逆序排列后输出,不改变各元素格式(如周围空格布局等)。data = open("data.csv","r")
for i in data:
ls =i.replace('\n','')
m = ls.split(',')[::-1] #列表切⽚-1是步长
print(','.join(m)) #最后返回是字符串
CSV格式数据清洗
描述
附件是⼀个CSV⽂件,其中每个数据前后存在空格,请对其进⾏清洗,要求如下:
(1)去掉每个数据前后空格,即数据之间仅⽤逗号(,)分割;
(2)清洗后打印输出。
数据之间本来就是逗号分隔,所以去除空格就好
python怎么读csv数据data = open("data.csv").read()
place(" ",""))
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。
发表评论