分享自己写python时遇到的错误


本文摘自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如何测量脚本运行时间

Python3.x的详细介绍

Python语言有哪些数据类型

Python如何计算列表中所有数字的乘积?(代码示例)

Python怎么结束循环

Python中文怎么读

a[1:]在Python什么意思

Python爬虫可以自学吗

传授 每30秒学会一个Python小技巧

更多相关阅读请进入《Python》频道 >>




打赏

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码打赏,您说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦

分享从这里开始,精彩与您同在

评论

管理员已关闭评论功能...