七、文件和数据格式化
1、文本的平均列数
描述
打印输出附件文件的平均列数,计算方法如下:????????????????????????????????????????????????????????????????????????????????????????????????
(1)有效行指包含至少一个字符的行,不计算空行;????????????????????????????????????????????????????????????????????????????????????????????????
(2)每行的列数为其有效字符数;????????????????????????????????????????????????????????????????????????????????????????????????
(3)平均列数为有效行的列数平均值,采用四舍五入方式取整数进位。
输入输出示例
仅给出输出格式示例,非正确答案。????????????????????????????????????????????????????????????????????????????????????????????????
| 输入 | 输出 | |
| 示例 1 |
|
|
【参考代码】
f = open("latex.log")
s, c = 0, 0
for line in f:line = line.strip("\n")if line == "":continues += len(line)c += 1
print(round(s/c))
2、CSV格式清洗与转换
描述
附件是一个CSV格式文件,提取数据进行如下格式转换:????????????????????????????????????????????????????????????????????????????????????????????????
(1)按行进行倒序排列;????????????????????????????????????????????????????????????????????????????????????????????????
(2)每行数据倒序排列;????????????????????????????????????????????????????????????????????????????????????????????????
(3)使用分号(;)代替逗号(,)分割数据,无空格;????????????????????????????????????????????????????????????????????????????????????????????????
按照上述要求转换后将数据输出。 ????????????????????????????????????????????????????????????????????????????????????????????????
输入输出示例
以下是一个格式示例,不是最终结果。????????????????????????????????????????????????????????????????????????????????????????????????
| 输入 | 输出 | |
| 示例 1 |
|
|
【参考代码】
f = open("data.csv")
ls = f.readlines()
ls = ls[::-1]
lt = []
for item in ls:item = item.strip("\n")item = item.replace(" ", "")lt = item.split(",")lt = lt[::-1]print(";".join(lt))
f.close()
说明:题目来自北理嵩天老师【Python语言程序设计 (第8期)】课程,如有侵权,立删。