当前位置: 代码迷 >> 综合 >> Python程序设计例题
  详细解决方案

Python程序设计例题

热度:46   发布时间:2024-01-27 04:10:36.0

七、文件和数据格式化

1、文本的平均列数

描述

打印输出附件文件的平均列数,计算方法如下:????????????????????????????????????????????????????????????????????????????????????????????????

(1)有效行指包含至少一个字符的行,不计算空行;????????????????????????????????????????????????????????????????????????????????????????????????

(2)每行的列数为其有效字符数;????????????????????????????????????????????????????????????????????????????????????????????????

(3)平均列数为有效行的列数平均值,采用四舍五入方式取整数进位。

输入输出示例

仅给出输出格式示例,非正确答案。????????????????????????????????????????????????????????????????????????????????????????????????

  输入 输出
示例 1
无
123

【参考代码】

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
(以下内容在文件中)
1,2,3
4,5,6
7,8,9
9;8;7
6;5;4
3;2;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期)】课程,如有侵权,立删。 

  相关解决方案