将一个文件读入程序,在每一行前面添加序号,然后写入另一个文件。如: Allen Beyonce Cindy Dianna 变成 1. Allen 2. Beyonce 3. Cindy 4. Dianna
时间: 2024-09-12 10:04:38 浏览: 22
这是一个简单的文件处理任务,可以通过编程语言实现,以下是一个使用Python语言的示例代码:
```python
# 打开源文件和目标文件
with open('source.txt', 'r', encoding='utf-8') as source_file, open('target.txt', 'w', encoding='utf-8') as target_file:
# 逐行读取源文件
for index, line in enumerate(source_file, start=1):
# 在每一行前面添加序号和一个点号,然后写入目标文件
# 使用strip()方法去除每行末尾的换行符,并在添加序号后补上一个空格
target_file.write(f"{index}. {line.strip()} ")
```
在这个代码中,我们首先使用`open`函数以读模式打开源文件`source.txt`,以写模式打开目标文件`target.txt`。然后使用`with`语句确保文件正确关闭。`enumerate`函数用于获取每行的索引(从1开始计数)和内容,然后将序号和点号添加到每行内容前面,最后写入到目标文件中。请注意,`strip()`函数用于移除每行末尾的换行符,以便在序号后面正确添加一个空格。
这段代码假设源文件`source.txt`存在且每行的内容不包含额外的换行符。如果源文件的格式不同,可能需要对代码进行相应的调整。
相关问题
用python写一个十佳歌手评分,分数在65以上95以下才有效的代码
下面是一个简单的Python代码示例,用于计算十大歌手的评分,并确保评分在65到95之间:
```python
# 定义歌手和评分字典
singers = {'Adele': 80, 'Beyonce': 90, 'Ed Sheeran': 70, 'Lady Gaga': 85, 'Bruno Mars': 75, 'Justin Bieber': 60, 'Taylor Swift': 95, 'Katy Perry': 70, 'Rihanna': 80, 'Drake': 85}
# 计算平均分数
total_score = sum(singers.values())
avg_score = total_score / len(singers)
# 输出平均分数
print('平均分数:', avg_score)
# 打印评分在65到95之间的歌手
for singer, score in singers.items():
if score >= 65 and score < 95:
print(singer, '的评分:', score)
```
这个代码会输出平均分数并打印出评分在65到95之间的歌手。您可以根据自己的需求修改歌手和评分字典,以及评分的范围。
,模拟10名评委为10位歌手打分,若分数为 [0,10】 之同的随机数 (保留2位小数)。产生成绩并写入文件pointstxt。 文件中,
每行记录一个歌手的分数,格式为“歌手名:分数”。
以下是Python代码实现:
``` python
import random
singers = ['Taylor Swift', 'Adele', 'Ed Sheeran', 'Beyonce', 'Bruno Mars', 'Rihanna', 'Justin Bieber', 'Katy Perry', 'Drake', 'Ariana Grande']
with open('points.txt', 'w') as f:
for singer in singers:
score = round(random.uniform(0, 10), 2)
f.write(singer + ':' + str(score) + '\n')
```
以上代码中,我们使用了`random.uniform(0, 10)`函数来生成0到10之间的随机数,并使用`round()`函数将其保留两位小数。最终将结果写入文件`points.txt`中。