本文摘自php中文网,作者零下一度,侵删。
今天写了一下代码,本来是想得到当前文件的上面三层的目录的,结果返回的却是错误1 2 3 4 5 | import osimport sysprint( __file__ )# 得到上上层目录的路径之后,加入到默认的环境变量中BASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname( __file__ )))
sys.path.append(BASE_DIR) print ( "******" , BASE_DIR)
输出结果:<encoding error>
******
|
然后在Stack Overflow中看到了以下说法
上面的大概意思说dirname和basename在分割路径的时候并不会去考虑当前路径,因此我们需要做以下修改,但是我之前写过的一个程序用的是相同的代码,可以执行,这让我很费解,不过问题确实解决了,如果有好心的网友知道具体的原因,还请在下面评论中指点迷津
修改代码:把__file__改成os.path.abspath(__file___)就可以了
1 2 3 | import osimport sysprint(os.path.abspath( __file__ ))
# 得到上上层目录的路径之后,加入到默认的环境变量中BASE_DIR = os.path.dirname(os.path.dirname(os.path.dirname(os.path.abspath( __file__ ))))
sys.path.append(BASE_DIR) print ( "******" , BASE_DIR)
|
以上就是分享自己写python时遇到的错误的详细内容,更多文章请关注木庄网络博客!!
相关阅读 >>
Python全栈是什么意思
实例讲解Python基于回溯法子集树模板解决旅行商问题(tsp)
Python中的装饰器、生成器与迭代器介绍
django 的性能与优化
Python使用for来迭代字典的原理是什么
详细分析之Python可变对象和不可变对象
Python画圆运用了什么函数
Python实现购物车购物小程序
Python实现的hmacmd5加密算法示例_Python
Python os.chroot() 方法定义以及作用详解(实例)
更多相关阅读请进入《Python》频道 >>
人民邮电出版社
python入门书籍,非常畅销,超高好评,python官方公认好书。
转载请注明出处:木庄网络博客 » 分享自己写python时遇到的错误