用Windows“记事本”创建一个文本文件,其中每行包含一段英文。试读出文件的全部内容,并判断: (1)该文本文件共有多少行? (2)文件中以大写字母P开头的有多少行? (3)一行中包含字符最多的和包含字符最少的分别在第几行?
时间: 2023-07-16 17:11:51 浏览: 642
可以使用Python来读取文本文件并进行处理。假设文本文件名为"test.txt",代码如下:
```python
with open("test.txt", "r") as f:
lines = f.readlines() # 读取全部行
num_lines = len(lines) # 统计行数
num_p_lines = 0 # 统计以P开头的行数
max_len = 0 # 记录最大字符数
min_len = float('inf') # 记录最小字符数
max_len_line = 0 # 记录最大字符数的行号
min_len_line = 0 # 记录最小字符数的行号
for i, line in enumerate(lines):
if line.startswith("P"): # 判断是否以P开头
num_p_lines += 1
line_len = len(line.strip()) # 计算去除换行符后的字符数
if line_len > max_len: # 更新最大字符数
max_len = line_len
max_len_line = i + 1 # 行号从1开始
if line_len < min_len: # 更新最小字符数
min_len = line_len
min_len_line = i + 1
print("总行数:", num_lines)
print("以P开头的行数:", num_p_lines)
print("最多字符的行号:", max_len_line, ",字符数:", max_len)
print("最少字符的行号:", min_len_line, ",字符数:", min_len)
```
其中,`with open("test.txt", "r") as f`语句打开文本文件,并通过`f.readlines()`读取全部行。`enumerate(lines)`将行号和行内容一起遍历,`line.startswith("P")`判断是否以P开头,`line.strip()`去除换行符并计算字符数。
运行代码后,可以得到输出结果,例如:
```
总行数: 5
以P开头的行数: 2
最多字符的行号: 4 ,字符数: 26
最少字符的行号: 1 ,字符数: 11
```
说明该文本文件共有5行,其中有2行以P开头,第4行包含最多的字符(26个),第1行包含最少的字符(11个)。
阅读全文