Alan Hou的个人博客

Python基础知识及常见问题

Python 创建虚拟环境

方法一venv:

方法二 pipenv:

方法三conda(推荐 miniconda):

方法四 virtualenv:

同时可配合 Virtualenv Wrapper来让使用更为方便

Gitignore 文件

通过 PyCharm 可快速创建.gitignore文件,只需在 Preferences > Plugins 中搜索 ignore 插件并进行安装,然后右击新建 New > .ignore file > .gitingore file,在弹窗中搜索 Python 和 JetBrains 选择生成。

源码解读:

https://read.douban.com/reader/ebook/1499455/(Python源码剖析-深度探索动态语言核心技术原书)

https://flaggo.github.io/python3-source-code-analysis/(网友基于原书进行的Python 3解读)

Jupyter快捷键

Linux下安装IPython

CentOS下运行yum list | grep ipython查看安装包

python-ipython.noarch             0.13.2-7.el6                 @epel   
python-ipython-console.noarch     0.13.2-7.el6                 @epel   
python-ipython-gui.noarch         0.13.2-7.el6                 @epel   
python-ipython-notebook.noarch    0.13.2-7.el6                 @epel   
python-ipython-doc.noarch         0.13.2-7.el6                 epel    
python-ipython-tests.noarch       0.13.2-7.el6                 epel  

运行yum -y install python-ipython.noarch完成安装,进入IPython命令行输入ipython:

Tcl/Tk不稳定报错

Mac上在Terminal中输入idle即可进入idle编辑器,但会发现如下警告:

WARNING: The version of Tcl/Tk (8.5.9) in use may be unstable.
Visit http://www.python.org/download/mac/tcltk/ for current information.

打开上面这个网页按照指引进入http://www.activestate.com/activetcl/downloads下载最新版的TCL(8.5.*)进行安装即可



实现Tab auto complete

可以Python的库目录下(如/usr/lib/python2.7/site-packages)创建tab.py,然后在命令行中import tab.py再使用tab即可

注:在Python命令行中直接使用dir(变量)命令也可以查看适用的方法

import readline
import rlcompleter
if 'libedit' in readline.__doc__:
    readline.parse_and_bind("bind ^I rl_complete")
else:
    readline.parse_and_bind("tab: complete")

Lambda函数

Python3 安装

VSCode 配置 Python 虚拟环境

  1. 打开VS Code,Code > Preferences > Settings进入用户设置,搜索python.venvPath(默认为空),将其设置为你自己虚拟环境所在的目录:如~/.virtualenvs
  2. 菜单栏View > Command Palette进入命令面板,输入 Python: Select Interpreter,选择相应的虚拟环境目录
  3. ModuleNotFoundError: No module named:按下快捷键ctrl+shift+p,选择Preferences: Open User Settings(JSON),在文件中加入

    根据平台使用windows或linux

PyCharm及 JetBrains 其它产品破解:https://macstore.info/a/Jetbrainscrack.html

网络

Packet Tracer

常见问题

1、subprocess.CalledProcessError: Command ‘(‘lsb_release’, ‘-a’)’ returned non-zero exit status 1.

查看lsb_release.py所在目录

将对应的lsb_release.py文件拷贝到subprocess.py目录下,如:

2、Was unable to import superset Error: No module named ‘_sqlite3’

3、ModuleNotFoundError: No module named ‘__main__.XX’; ‘__main__’ is not a package

入口文件中不能使用相对路径,同级目录的可使用如下方式进行解决:

ValueError: attempted relative import beyond top-level package 报错也可使用类似方式进行解决

4、使用 redis时,ttl 返回为 None,将连接时的 Redis 修改为 StrictRedis

5、快速搭建 Web 服务器和离线查看文档

6、AttributeError: module ‘asyncio’ has no attribute ‘run’

Python 3.7及以上使用

 

退出移动版