Python3基础 sys.path 查看与修改导包的路径

  •        Python : 3.7.3
  •          OS : Ubuntu 18.04.2 LTS
  •         IDE : pycharm-community-2019.1.3
  •       Conda : 4.7.5
  •    typesetting : Markdown

code

coder@ubuntu:~$ source activate py37
(py37) coder@ubuntu:~$ ipython
Python 3.7.3 (default, Mar 27 2019, 22:11:17) 
Type 'copyright', 'credits' or 'license' for more information
IPython 7.5.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import sys                                                              

In [2]: sys.path                                                                
Out[2]: 
['/home/coder/anaconda3/envs/py37/bin',
 '/home/coder/anaconda3/envs/py37/lib/python37.zip',
 '/home/coder/anaconda3/envs/py37/lib/python3.7',
 '/home/coder/anaconda3/envs/py37/lib/python3.7/lib-dynload',
 '',
 '/home/coder/anaconda3/envs/py37/lib/python3.7/site-packages',
 '/home/coder/anaconda3/envs/py37/lib/python3.7/site-packages/IPython/extensions',
 '/home/coder/.ipython']

In [3]: # 导包的时候,按照sys.path列表中的路径进行按顺序进行搜索                                 

In [4]: # 如果在sys.path[0]的路径下找到了,那么就停止搜索,不会去寻找sys.path[1]                 

In [5]: type(sys.path)                                                                           
Out[5]: list

In [6]: sys.path.append("/home/coder")                                                           

In [7]: sys.path                                                                                 
Out[7]: 
['/home/coder/anaconda3/envs/py37/bin',
 '/home/coder/anaconda3/envs/py37/lib/python37.zip',
 '/home/coder/anaconda3/envs/py37/lib/python3.7',
 '/home/coder/anaconda3/envs/py37/lib/python3.7/lib-dynload',
 '',
 '/home/coder/anaconda3/envs/py37/lib/python3.7/site-packages',
 '/home/coder/anaconda3/envs/py37/lib/python3.7/site-packages/IPython/extensions',
 '/home/coder/.ipython',
 '/home/coder']

In [8]: # 这样修改的话,是临时的。再启动时,恢复默认。                                           

In [9]: exit                                                                                     
(py37) coder@ubuntu:~$ ipython
Python 3.7.3 (default, Mar 27 2019, 22:11:17) 
Type 'copyright', 'credits' or 'license' for more information
IPython 7.5.0 -- An enhanced Interactive Python. Type '?' for help.

In [1]: import sys                                                                               

In [2]: sys.path                                                                                 
Out[2]: 
['/home/coder/anaconda3/envs/py37/bin',
 '/home/coder/anaconda3/envs/py37/lib/python37.zip',
 '/home/coder/anaconda3/envs/py37/lib/python3.7',
 '/home/coder/anaconda3/envs/py37/lib/python3.7/lib-dynload',
 '',
 '/home/coder/anaconda3/envs/py37/lib/python3.7/site-packages',
 '/home/coder/anaconda3/envs/py37/lib/python3.7/site-packages/IPython/extensions',
 '/home/coder/.ipython']

In [3]: exit                                                                                     
(py37) coder@ubuntu:~$ conda deactivate
coder@ubuntu:~$ 

source_code

path = [
    '/home/coder/Downloads/pycharm-community-2019.1.3/helpers',
    '/home/coder/anaconda3/envs/py37/lib/python37.zip',
    '/home/coder/anaconda3/envs/py37/lib/python3.7',
    '/home/coder/anaconda3/envs/py37/lib/python3.7/lib-dynload',
    '/home/coder/anaconda3/envs/py37/lib/python3.7/site-packages',
]

resource

  • [文档 - English] docs.python.org/3
  • [文档 - 中文] docs.python.org/zh-cn/3
  • [规范] www.python.org/dev/peps/pep-0008
  • [规范] zh-google-styleguide.readthedocs.io/en/latest/google-python-styleguide/python_language_rules
  • [源码] www.python.org/downloads/source
  • [ PEP ] www.python.org/dev/peps
  • [平台] www.cnblogs.com
  • [平台] gitee.com


Python具有开源、跨平台、解释型、交互式等特性,值得学习。
Python的设计哲学:优雅,明确,简单。提倡用一种方法,最好是只有一种方法来做一件事。
代码的书写要遵守规范,这样有助于沟通和理解。
每种语言都有独特的思想,初学者需要转变思维、踏实践行、坚持积累。

原文地址:https://www.cnblogs.com/xingchuxin/p/11142058.html