使用python编写程序显示一个文件的前五行内容,不够五行的全部显示,要求文件名从键盘输入。
时间: 2024-02-22 22:56:32 浏览: 92
好的,可以使用Python内置的open()函数和readlines()方法实现。下面是代码示例:
```
filename = input("请输入文件名:")
try:
with open(filename, "r") as file:
lines = file.readlines()[:5] # 获取前五行
for line in lines:
print(line.strip()) # 去掉每行末尾的换行符
except FileNotFoundError:
print("文件不存在!")
```
首先,我们使用input()函数让用户从键盘输入文件名,并使用with语句打开文件。然后,我们使用readlines()方法读取文件内容,并使用切片操作获取前五行。最后,我们使用for循环遍历这五行,并使用strip()方法去掉每行末尾的换行符。
如果文件不足五行,以上代码将显示文件的全部内容。如果文件不存在,程序将显示"文件不存在!"的提示信息。
相关问题
用python编写1、显示一个文件的前五行内容,不够五行的全部显示,要求文件名从键盘输入。 2、从键盘输入若干整数,存入文件,然后从文件中读出所有数计算平均值。 3、将本班学生的姓名和python成绩存入文件(学生个数,各项数据从键盘输入),然后从文件中取出数据找出成绩最高的学生,打印其信息
好的,我会一一回答你的问题。
1. 显示一个文件的前五行内容,不够五行的全部显示,要求文件名从键盘输入。
```python
filename = input("请输入文件名:")
with open(filename, 'r') as f:
for i in range(5):
line = f.readline()
if line:
print(line)
else:
break
```
2. 从键盘输入若干整数,存入文件,然后从文件中读出所有数计算平均值。
```python
filename = input("请输入文件名:")
with open(filename, 'w') as f:
nums = input("请输入若干整数,以空格分隔:")
f.write(nums)
with open(filename, 'r') as f:
nums = f.read().split()
nums = [int(num) for num in nums]
avg = sum(nums) / len(nums)
print("平均值为:", avg)
```
3. 将本班学生的姓名和python成绩存入文件(学生个数,各项数据从键盘输入),然后从文件中取出数据找出成绩最高的学生,打印其信息
```python
filename = input("请输入文件名:")
with open(filename, 'w') as f:
n = int(input("请输入学生个数:"))
for i in range(n):
name = input("请输入学生姓名:")
score = int(input("请输入学生Python成绩:"))
f.write(name + ' ' + str(score) + '\n')
with open(filename, 'r') as f:
max_score = 0
max_student = ''
for line in f.readlines():
name, score = line.strip().split()
score = int(score)
if score > max_score:
max_score = score
max_student = name
print("Python成绩最高的学生是:", max_student, ",成绩为:", max_score)
```
希望能够帮到你!
阅读全文