13、python的路径处理

前言:本文主要介绍python中路径的处理,包括os模块和有关的2个魔法变量。

一、os模块



python里面的os模块有许多方法可以让我们通过代码实现创建,删除和更改目录,具体如下:

  • os.getcwd():显示当前的工作路径,只具体到路径,不具体到文件
  • os.path.realpath(path):返回path的真实路径,如果参数是:file,就说明是本文件所在的绝对路径,对比二者的区别?
  • os.path.join(a,b):连接两个部分的路径,组成一个完整的路径
  • os.mkdir(路径名字):在某个目录下创建一个新目录
  • os.rmdir(路径名字):删掉一个目录
  • os.listdir():获取当前路径下的目录列表,返回列表格式数啹
  • os.path.isdir():判断当前文件是否是目录,返回布尔值
  • os.path.isfile():判断当前文件是否是文件,返回布尔值
  • os.chdir(path):将当前工作目录更改为指定路径
  • os.rename(name,newname):修改文件各字

还有更多的方法有兴趣请自行百度,以下是一些用法参考:

import time
import os
import sys

# sys.path是python的搜索模块的路径集,用list存放
# 导入的包的搜索路径顺序按sys.path一个个往下找,如果在这些路径下都找不到这个包,就会报错

# 可以通过append()给它增加要使用的包的路径,
# for i in sys.path:
#     print(i)

# os模块:对操作系统进行操作的一系列动作都在os模块里
# 获取当前工作路径,只具体到路径,不具体到文件名
print(os.getcwd())

# 获取当前文件在操作系统中的绝对路径,具体到文件名
print(__file__)

# 查看指定文件在系统中的绝对路径
print(os.path.realpath(‘test‘))
print(os.path.realpath(__file__))

# os.path.join  拼接路径
path_01 = ‘d:\learn‘
path_02 = os.path.join(path_01, ‘python‘)
print(path_02)

# os.mkdir() :创建目录(文件夹)
# os.mkdir(‘test‘)

# os.rmdir() :删除目录(只能删除空目录),如果目录下有文件,会报错 ,非空目录怎么删除,思考一下?
# os.rmdir(‘test‘)

# 默认返回当前路径下的所有文件和目录信息,以列表形式返回
print(os.listdir())
print(os.listdir(‘d:\learn\test‘))

# os.path.isfile():判断当前文件是否是文件,返回布尔值  不传入路径默认搜索当前路径
# os.path.isdir():判断当前文件是否是文件,返回布尔值
print(os.path.isfile(‘task.py‘))
print(os.path.isdir(‘test‘))

# od.chdir():切换当前工作路径
# print(os.getcwd())
# os.chdir(‘d:\learn‘)
# print(os.getcwd())

# 修改文件名
# os.rename(‘test.py‘,‘test2.py‘)

# 返回上一级的目录
dir = __file__
print(os.path.dirname(dir))

二、魔法变量



  什么是魔方变量?前后双下划线,系统定义名字(这就是在python中强大的魔法方法),因为变量名__xxx__对Python 来说有特殊含义,

对于普通的变量应当避免这种命名风格,下面介绍python中的2个魔法变量。

1) __ file __ : 代表当前文件的绝对路径

2) __ name __ : 如果当前文件值程序的启动文件中,它的值是 __ main __如果不在启动文件中,代表的就是所在的文件(模块)的模块名

import os
#  魔术变量的操作
# print(‘当前运行文件中打印的__name__:‘,__name__)

# 路径的处理
print(__file__)

# 自动化测试项目,用到的路径基本会使用相对路径
# 这样不管项目放到哪个环境都能正常运行

# 获取文件/目录所在的父级目录
dir = os.path.dirname(__file__)
print(dir)

BASEDIR = os.path.dirname(dir)
print(BASEDIR)

# 这就是test.py的相对路径,而不是d:\python\test\test.py绝对路径
file_path = os.path.join(BASEDIR, "test.py")
print(file_path)

作者:miki_peng

出处:https://www.cnblogs.com/miki-peng

本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,请大家尊重原创,如要转载,请在文章页面明显位置注明出处,否则保留追究法律责任的权利。

原文地址:https://www.cnblogs.com/miki-peng/p/12230349.html

时间: 2024-10-10 02:54:05

13、python的路径处理的相关文章

Python之路【第二十四篇】:Python学习路径及练手项目合集

Python学习路径及练手项目合集 Wayne Shi· 2 个月前 参照:https://zhuanlan.zhihu.com/p/23561159 更多文章欢迎关注专栏:学习编程. 本系列Python技术路径中包含入门知识.Python基础.Web框架.基础项目.网络编程.数据与计算.综合项目七个模块.路径中的教程将带你逐步深入,学会如何使用 Python 实现一个博客,桌面词典,微信机器人或网络安全软件等.完成本路径的基础及项目练习,将具备独立的Python开发能力. 完整的Python学

Python搜索路径

转自:http://www.jbxue.com/article/15324.html 在python编程中,模块的导入需要一个叫做"路径搜索"的过程.即在文件系统"预定义区域"中查找 mymodule.py文件(如果你导入 mymodule 的话).这些预定义区域只不过是你的 Python 搜索路径的集合. 默认搜索路径是在编译或是安装时指定的.它可以在一个或两个地方修改.一个是启动 Python 的 shell 或命令行的 PYTHONPATH 环境变量. 该变量

python的路径

[python的路径] 1.PYTHONHOME Change the location of the standard Python libraries. By default, the libraries are searched in prefix/lib/pythonversion and exec_prefix/lib/pythonversion, where prefix and exec_prefix are installation-dependent directories,

注册表中添加Python安装路径

安装pywin32会要求寻找python安装路径(说实在我没遇到找不到然后安装不上的事儿,姑且先记下来), reference: http://bbs.csdn.net/topics/390512587?page=1 Windows Registry Editor Version 5.00 [HKEY_CURRENT_USER\Software\Python] [HKEY_CURRENT_USER\Software\Python\Pythoncore] [HKEY_CURRENT_USER\So

自定义python模块路径

自定义python模块路径: 如下载好的python模块scons $ tar zxfv scons-3.0.0.tar.gz$ cd scons-3.0.0$ mkdir ~/scons$ python setup.py install --home ~/scons/ $ vi ~/.bashrc export PYTHONPATH=$PYTHONPATH:~/scons:wq$ source ~/.bashrc 原文地址:http://blog.51cto.com/yangzhiming/2

2019版python学习路径图

据了解,在Blender.GIMP等软件的背后,Python图形处理脚本已经在发挥越来越大的作用.如果你看过Blender基金会制作的三部开源动画影片,你甚至还能预期不远的未来,Python终将有一天能够进军好莱坞,成为数字电影制作的一种工具.因此有越来越多的人加入到Python的学习中来.2019版python学习路径图分享给你.有人说Python难,其实只是因为很多人不熟悉python的部署,所以才说难,目前python不是非常普及的原因有两个:第一是会python的程序员较少,从招人就能看

安装PIL库时提示python未注册错误(自定义python安装路径)

1 import sys 2 3 from _winreg import * 4 5 # tweak as necessary 6 version = sys.version[:3] 7 installpath = sys.prefix 8 regpath = "SOFTWARE\Python\Pythoncore\%s\\" % (version) 9 installkey = "InstallPath" 10 pythonkey = "PythonPa

13.python中web框架概念的引入。

一.什么是web框架? 框架,就是一个为解决一个开放性问题而设计的具有一定约束性的支撑结构,使用框架可以帮你快速开发特定的系统,简单地说,就是你用别人搭建好的舞台来做表演. 对于所有的Web应用,本质上其实就是一个socket服务端,用户的浏览器其实就是一个socket客户端. 最简单的Web应用就是先把HTML用文件保存好,用一个现成的HTTP服务器软件,接收用户请求,从文件中读取HTML,返回. 如果要动态生成HTML,就需要把上述步骤自己来实现.不过,接受HTTP请求.解析HTTP请求.发

自定Python模块路径及调用方法

今天自己跟着教材写好了一个函数,添加好注释后保存,准备用来作模块使用. 就在自己满怀激情准备使用一下这个模块的时候,却发现不知道自己的模块要放在哪里,怎么调用…… 经过网上一轮百度后,在其他老鸟的博客里终于找到了相关的方法,在这里小记一下: 临时指定路径可用:impor sys;sys.path.append('/home/XXXX') 添加默认模块搜索路径(我的python为2.7版):在/usr/local/lib/python2.7/dist-packages目录里新建一个.pth文件,把