python中遇到的⼀些问题及解决⽅案
不可避免经常会碰到⼀些⼩问题,但会耽误⾃⼰很长时间,希望对⼤家有所帮助。
1. SyntaxError:
Non-UTF-8 code starting with '\xd7' in file 0807_multiprocessing实例.py on line 7, but no encoding declared
; see /dev/peps/pep-0263/ for details
解决⽅法:第⼀⾏添加
#coding=gbk
如果添加 coding=utf-8就会显⽰(unicode error) 'utf-8' codec can't decode byte 0xd7
2.  E325:注意
发现交换⽂件...
解决⽅法:产⽣问题的原因是有个和⽂件名⼀样的⽂件,⼀般是异常情况下出现的,没有保存,删掉异常⽂件就好了 rm xxx.py.swp 就好了3. 位、⽐特、字节的区分
⼆进制位(binary digit),简称位(bit),⾳译⽐特,表⽰⼆进制单位,是计算机内部数据储存的最⼩单位,
字节(Byte),习惯⽤B表⽰,是计算机处理数据的基本单位,以字节为单位存储和解释信息,⼀个字节等于8个位,⼀个字节可以存⼊⼀个ASCII码,2个字节存放⼀个汉字国标码。ubuntu怎么安装python
4. cmd中python如何退出?
Ctrl+z
5. name error :name xxx is not defined
变量名错误,但是⾁眼怎么也看不出来错在哪⾥,以后就⾃动补全Ctrl + N
6.sublime中动态调整字体⼤⼩
Ctrl + 滚轮
7. Ubuntu的终端字体⼤⼩调节
Ctrl + shift  + +/-  ?
8.python的命令⾏退出机制
在Windows中,按Ctrl+Z,再按回车退出。在Linux中,按Ctrl+D退出。
9. RecursionError: maximum recursion depth exceeded while calling a Python object 报错提⽰超过最⼤递归深度。解决⽅式为加⼊如下脚本:
import sys
sys.setrecursionlimit(1000000) #例如这⾥设置为⼀百万
10. Ubuntu中apt-get install安装软件,显⽰“E:⽆法定位软件包”
需要更新下软件源,sudo apt-get update
11. pycharm⾥⾯如何放⼤缩⼩字体?
详见
12. 新式类和旧式类
Python 2.x中默认都是经典类,只有显式继承了object才是新式类,python3都是新式类
13.Ubuntu 16.04 遇到的执⾏命令 sudo apt-get update 时出现E: ⽆法下载
ppa.launchpad/fcitx-team/nightly/ubuntu/dists/xenial/main/binary-amd64/Packages 404 Not Found,如下图所⽰:
解决⽅案:删除对应的ppa 第⼀步:
cd /etc/apt/sources.list.d
第⼆步:在该⽬录下ls,即可以看到对应的⽆法下载的fcitx-team-ubuntu-nightly-xenial.list,删除该.list即可(安全起见,可以进⾏添加后缀.bak的备份)
mv fcitx-team-ubuntu-nightly-xenial.list fcitx-team-ubuntu-nightly-xenial.list.bak
第三步:检查问题是否解决在终端中输⼊命令:
sudo apt-get update
14. 在robomongo(也就是robo3T)⽤aggregate的$skip和$limit发⽣的bug :
Error: Line 9: Unexpected token {
db.stu.aggregate([
{$match:{age:{$gt:20}}},
{$group:{
_id:'$gender',
counter:{$sum:1}
}},
{$project:{_id:1,counter:1}},
{$sort:{_id:-1}}
{$skip:1},
{$limit:1}
])
解决⽅案: {$sort:{_id:1}}后边少加了逗号。。。
具体描述:开始阶段mongoDB配置是auth disable ,创建超级管理员之后,按照⽹上搜索的答案,net stop mongodb,vim mongod.cfg修改配置启⽤授权,再net start mongodb,结果:服务没有响应控制功能。只能讲⾝份验证配置禁⽤才可以打开mongod和mongo
解决⽅案:暂⽆,在stackoverflow上提问了
16. import引⽤问题
PEP 328⾥⾯说的很详细了,基多的解决⽅案例⼦:
package/
__init__.py
subpackage1/
__init__.py
moduleX.py
moduleY.py
subpackage2/
__init__.py
moduleZ.py
moduleA.py
Assuming that the current file is either moduleX.py or subpackage1/__init__.py, following are correct usages of the new syntax:
from .moduleY import spam
from .moduleY import spam as ham
from . import moduleY
from ..subpackage1 import moduleY
from ..duleZ import eggs
from ..moduleA import foo
from ...package import bar
from ...sys import path

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。