python+os利用os.getcwd()和os.chdir提高算法的移植性

xiaoxiao2021-02-28  47

背景介绍:现在很多博客上的代码难以直接运行,即使是一些小程序,很有可能是路径设置不正确

功能介绍:我们可以利用os库的两个函数进行路径的操作,从而使我们工作的环境变量与电脑不相关

代码实例:

# !usr/bin/env python # coding: utf-8 import os # 为了获得当前绝对路径,可以使用os.getcwd()函数 currentRoot = os.getcwd() # 在当前目录下创建一个文件,并写入一些数据 with open('os_python.txt','w+') as f: # 这时我们创建一个名为os_python.txt的文件 for i in range(0,5): f.write(str(i) + '\n') print('文件写入成功') # 可以看出在你当前项目目录下有一个文件,名称为os_python.txt # 里面有从0到4的数 with open('os_python.txt','r') as f2: # 我们可以依次打印出我们刚刚写入该文件的数字 for i in f2.readlines(): print(i) print('文件打印成功') # 我们可以看到打印出了0到4这几个数 # 可以看出在没有设置环境变量的情况下,我们可以进行写文件和读文件的操作 # 这个步骤并不需要我们指定一个环境变量,大大增加了程序的移植. # 为了测试可以改变当前路径,我们在当前目录下创建一个文件夹为test_os # 我们可以利用os.chdir()改变环境变量 os.chdir(currentRoot + '/test_os') print('已改变当前目录') # 在改变后的当前环境中创建文件进行读写 with open('os_ptest.txt','w+') as f: # 这时我们创建一个名为os_python.txt的文件 for i in range(5,10): f.write(str(i) + '\n') print('文件写入成功') with open('os_ptest.txt','r') as f2: # 我们可以依次打印出我们刚刚写入该文件的数字 for i in f2.readlines(): print(i) print('文件打印成功') # 我们重新切回上一个路径 os.chdir(currentRoot) print('当前路径重新返回项目目录')
转载请注明原文地址: https://www.6miu.com/read-2623064.html

最新回复(0)