太原理工大学 强彦 的学生需要编写一个程序,该程序应实现以下功能:从当前运行的程序文件(假设为 source_code.py)中读取源代码,并将其内容复制到同目录下的名为 'temp.txt' 的文本文件中。请展示这个程序的代码,包括所有必要的步骤和语法,以确保分值为10。
时间: 2024-10-27 20:12:11 浏览: 14
在使用VSCode编写C程序时,出现错误:cannot open source file “stdio.h”
在Python中,你可以使用内置的`open()`函数和文件操作来实现这个任务。下面是一个简单的程序示例,它会完成从source_code.py读取源代码并写入temp.txt文件的功能:
```python
# 首先,我们需要导入os模块,用于获取当前文件的路径
import os
# 确定当前正在运行的程序的路径
current_file_path = os.path.abspath(__file__) # 获取当前脚本的绝对路径
dir_path = os.path.dirname(current_file_path) # 获取目录路径
# 定义源代码文件名和目标文件名
source_code_file = 'source_code.py'
target_file = 'temp.txt'
# 拼接源代码文件的完整路径
source_code_full_path = os.path.join(dir_path, source_code_file)
# 使用try-except块处理可能出现的异常,如文件不存在或权限错误
try:
with open(source_code_full_path, 'r') as src_file:
content = src_file.read() # 读取源代码
except Exception as e:
print(f"Error occurred while reading {source_code_file}: {e}")
else:
try:
with open(os.path.join(dir_path, target_file), 'w') as target_file:
target_file.write(content) # 将内容写入目标文件
print(f"{source_code_file} successfully copied to {target_file}")
except Exception as e:
print(f"Error occurred while writing to {target_file}: {e}")
阅读全文