python 获取目录下的 txt 循环 各自取一行 写入新的txt
时间: 2023-06-06 13:07:47 浏览: 61
可以使用Python中的os模块与random模块,以及with语句,实现获取目录下的txt文件并循环读取各自的一行,并将其写入新的txt文件。具体代码如下:
```python
import os
import random
# 定义获取目录下的txt文件函数
def get_files(path):
files = []
for file in os.listdir(path):
if file.endswith('.txt'):
files.append(os.path.join(path, file))
return files
# 定义主函数
def main():
# 设置目录路径和新文件路径
path = r'./txt_files'
new_path = r'./new_txt_files/new_file.txt'
# 获取目录下的txt文件
files = get_files(path)
# 随机选择一个txt文件
file_index = random.randint(0, len(files)-1)
selected_file = files[file_index]
# 循环读取txt文件中的每一行,并将其写入新的txt文件
with open(selected_file, 'r') as f1, open(new_path, 'w') as f2:
for line in f1:
f2.write(line)
print(f"已将目录下的txt文件中 {selected_file} 文件的每一行写入新的txt文件 {new_path} 中!")
if __name__ == '__main__':
main()
```
注意,该代码只能读取.txt文件中的每一行并写入新的.txt文件中,并不能保证每一行都是有效的文本内容,因此请根据实际需要进行修改。
相关推荐
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![pdf](https://img-home.csdnimg.cn/images/20210720083512.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)