Python设置细节

发布时间:2022-01-06 09:41:56 人气:235 作者:多测师

  Windows下python环境变量配置

  默认情况下,在windows下安装python之后,系统并不会自动添加相应的环境变量。此时不能在命令行直接使用python命令。

  1. 首先需要在系统中注册python环境变量:假设python的安装路径为c:\python2.6,则修改我的电脑->属性->高级->环境变量->系统变量中的PATH为:

  (为了在命令行模式下运行Python命令,需要将python.exe所在的目录附加到PATH这个环境变量中。)

  PATH=PATH;c:\python26

  上述环境变量设置成功之后,就可以在命令行直接使用python命令。或执行"python *.py"运行python脚本了。

  2. 此时,还是只能通过"python *.py"运行python脚本,若希望直接运行*.py,只需再修改另一个环境变量PATHEXT:

  PATHEXT=PATHEXT;.PY;.PYM

  3. 另外,在使用python的过程中,可能需要经常查看某个命令的帮助文档,如使用help('print')查看print命令的使用说明。默认安装的python无法查看帮助文档,尚需进行简单的配置:

  在python安装目录下,找到python25.chm,使用

  hh -decompile .python26.chm

  将其反编译出来,然后将其所在的目录加入到上面提到的PATH环境变量中即可。

Python设置细节

  4. 如何使Python解释器能直接import默认安装路径以外的第三方模块?

  为了能import默认安装路径以外的第三方的模块(如自己写的模块),需要新建PYTHONPATH环境变量,值为这个模块所在的目录。

  Python 设置系统默认编码

  Python

  python在安装时,默认的编码是ascii,当程序中出现非ascii编码时,python的处理常常会报这样的错UnicodeDecodeError: 'ascii' codec can't decode byte 0x?? in position 1: ordinal not in range(128),python没办法处理非ascii编码的,此时需要自己设置将python的默认编码,一般设置为utf8的编码格式。

  查询系统默认编码可以在解释器中输入以下命令:

  Python代码

  >>>sys.getdefaultencoding()

  设置默认编码时使用:

  Python代码

  >>>sys.setdefaultencoding('utf8')

  可能会报AttributeError: 'module' object has no attribute 'setdefaultencoding'的错误,执行reload(sys),在执行以上命令就可以顺利通过。

  此时在执行sys.getdefaultencoding()就会发现编码已经被设置为utf8的了,但是在解释器里修改的编码只能保证当次有效,在重启解释器后,会发现,编码又被重置为默认的ascii了,那么有没有办法一次性修改程序或系统的默认编码呢。

  有2种方法设置python的默认编码:

  一个解决的方案在程序中加入以下代码:

  Python代码

  import sys

  reload(sys)

  sys.setdefaultencoding('utf8')

  另一个方案是在python的Lib\site-packages文件夹下新建一个sitecustomize.py,内容为:

  Python代码

  # encoding=utf8

  import sys

  reload(sys)

  sys.setdefaultencoding('utf8')

  此时重启python解释器,执行sys.getdefaultencoding(),发现编码已经被设置为utf8的了,多次重启之后,效果相同,这是因为系统在python启动的时候,自行调用该文件,设置系统的默认编码,而不需要每次都手动的加上解决代码,属于一劳永逸的解决方法。

  另外有一种解决方案是在程序中所有涉及到编码的地方,强制编码为utf8,即添加代码encode("utf8"),这种方法并不推荐使用,因为一旦少写一个地方,将会导致大量的错误报告,我曾经遇到这种情况,错误日志压缩之后尚有70多K,全都是这一个问题,让人有很崩溃的感觉。

  以上内容为大家介绍了Python设置细节,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注多测师。https://www.e70w.com/xwzx/

返回列表
在线客服
联系方式

热线电话

17727591462

上班时间

周一到周五

二维码
线