os 模块 python file 与文件路径

eg1:

[root@kooxoo20-180 sersync]# cat test.py
#!/usr/bin/env python
print __file__
[root@kooxoo20-180 sersync]# python test.py   
test.py             ##me相对路径得到的是相对路径
[root@kooxoo20-180 sersync]# python /home/wuxy/sersync/test.py    
/home/wuxy/sersync/test.py  ##绝对路径得到的是绝对路径


eg2:

[root@kooxoo20-180 sersync]# cat test.py
#!/usr/bin/env python
import os

a=os.path.realpath(__file__)
print a

[root@kooxoo20-180 sersync]# python test.py
/home/wuxy/sersync/test.py
[root@kooxoo20-180 sersync]# python /home/wuxy/sersync/test.py
/home/wuxy/sersync/test.py      ##不管怎么执行,得到的都是绝对路径


eg3:

[root@kooxoo20-180 sersync]# cat test.py
#!/usr/bin/env python
import os

a=os.path.realpath(__file__)
print a
FILE_PATH=os.path.dirname(a)
print FILE_PATH
FILE_PATH=os.path.dirname(os.path.realpath(__file__)) ##建议使用这种方式
print FILE_PATH

[root@kooxoo20-180 sersync]# python test.py
/home/wuxy/sersync/test.py
/home/wuxy/sersync
/home/wuxy/sersync             ##调用变量和不使用变量的print值都是一样的


eg4:

[root@kooxoo20-180 sersync]# cat test.py
#!/usr/bin/env python
import os

FILE_PATH=os.path.dirname(os.path.realpath(__file__))
PYCORE_PATH = os.path.realpath(os.path.join(FILE_PATH, '..', 'pycore'))
print PYCORE_PATH
[root@kooxoo20-180 sersync]# pwd
/home/wuxy/sersync
[root@kooxoo20-180 sersync]# python test.py
/home/wuxy/pycore

##me:os.path.join 用 '/' 将各个路径连接起来。

你可能感兴趣的:(python,学习)