Python.编写程序,产生100个两位正的随机整数,将他们存入文件num1.txt,然后再从文件num1.txt中读取数据到一个列表中按照从小到大的排序后输出,并将排序结果写入文件num2.txt中。
时间: 2024-03-07 20:49:44 浏览: 75
好的,下面是 Python 编写的根据题目要求产生随机整数、写入文件、读取并排序的程序:
```python
import random
# 产生 100 个两位正整数并写入文件 num1.txt
with open('num1.txt', 'w') as f:
for i in range(100):
num = random.randint(10, 99) # 产生两位正整数
f.write(str(num) + '\n') # 写入文件
# 读取 num1.txt 文件中的数据并排序,将结果写入文件 num2.txt
with open('num1.txt', 'r') as f1, open('num2.txt', 'w') as f2:
nums = [int(line.strip()) for line in f1.readlines()] # 读取并转换数据
nums.sort() # 排序
for num in nums:
f2.write(str(num) + '\n') # 写入文件
print("排序后的结果:")
print(nums)
```
程序中首先使用 `with open('num1.txt', 'w') as f` 打开 num1.txt 文件,并循环产生 100 个两位正整数,并使用 `f.write(str(num) + '\n')` 将其转换为字符串并写入文件中。然后使用 `with open('num1.txt', 'r') as f1, open('num2.txt', 'w') as f2` 打开 num1.txt 文件和 num2.txt 文件,读取 num1.txt 文件中的数据并使用列表推导式将字符串转换为整数,并存入列表 nums 中。然后对 nums 列表进行排序,并使用 `f2.write(str(num) + '\n')` 将每个排序后的数字写入 num2.txt 文件中。最后输出排序后的结果。
例如,num2.txt 文件中的数据可能是这样的:
```
11
13
14
15
16
...
```
阅读全文