Python学习笔记 简单记录


Python学习笔记


1.从微信上复制过来的python代码后缀名改为.py时仍不能正常运行,经此文件另存编码方式改为UTF-8后再次运行正常。
2.格式化输出一段话时,先定义这段话的格式
如‘%s会成功,挣$%’
紧跟着给出不同情况下的插入的话
如%(xq,100000000000)
此时,整个格式化的陈述完成,可以打印输出
3.linux 下安装pip可以更方便的管理python,linux下安装pip可能会出现找不到安装包情况,原因为系统较老,此时优先升级系统,国外网站的源被限速很可能导致中断,可修改liunx源,从而较快速升级,升级命令为sudo apt-get update 、sudo apt-get upgrade,此时升级完成后,再执行sudo apt-get install python-pip来安装pip。
4.linux 下安装pyopenssl时报出上述错误时,可在系统设置中修改源之后重新执行sudo apt-get update 、sudo apt-get upgrade,pip install pyopenssl,早上网速较快,可以更新下载
5.Linux vim编辑器安装报找不到包错误,原因为/etc/apt/sources.list的文件中源设置不太合理,可按照网上给出的源文件复制粘贴,再重新执行sudo apt-get update 、sudo apt-get upgrade 、sudo apt-get install vim即可
6.Mongodb已装入linux但服务无法开启,执行service mongodb start时无反应,在安装MongoDB时报安装包已损坏,此时建立一个文件夹,执行mongod --dbpath=///database 即可将mongodb服务产生的数据文件指向该文件,从而正常拉起服务,以后使用mongodb服务时用nohup mongod --dbpath=/home/xiaoqun/database &即可保证服务正常后台运行。
7.安装pyqtgraph时,下载安装网速慢卡死或者下载完要求Python3.5以上才能安装,此时Ubuntu16.04默认已安装Python2.7和Python3.5,此时只需调整Python3的优先级既能继续,调整优先级输入sudo update-alternatives --install //bin/python python //bin/python3.8 200
后面的200这个数值,数值越大优先级越高
8.设置软连接可使系统自动调用sudo ln -s ///bin/python3.8 /usr/bin/python3.8
9.对于安装sasquatch 工具的命令(cd sasquatch && ./build.sh),当前用户权限不够,打不开压缩包,命令前加sudo也不可执行,直接登录超户后执行此命令即可顺利执行。
10.执行pip install * 报no module named _internal错误,更新pip版本即可,当时直接下载的最新python3.8安装,包装中自带最新pip,再设置Python3.8的优先级即可顺利运行。
11.Python2.7版中set集合不是内置的函数需要导入,而Python3.x版本set为内置函数,可以直接使用不用导入;
Python2.7版中print可以不带括号输出,而3.x版本必须带小括号;
Python2.7版中urlparse函数在3.x版本中已归并入urlib函数中;
Python2.7版中异常处理格式为try: try:
… 在3.x版本中变为 …
except Exception,e except 错误类型 as 变量
上述老版Python中的e为exception的缩写,是运行时抛出的错误类型的接口进入
12.报出NameError:name ‘reload’ is not defined错误,
Python2.7版中import sys import importlib
reload (sys) 而在3.4以上版本中为 importlib.reload(sys)
sys.setdefaultencoding(“utf-8”)
上述这段代码是为了解决Python中中文输出错误而写的。报出Noy module named '_sqlite3’错误,Python3.8缺少对应的sqlite3模块,
13.报出No module named '_sqlite3’错误,是由于Python3.8缺少对应的sqlite3模块,前往官网www.sqlite.org下载sqlite-autoconf***.tar.gz类型的源码版,tar zxvf 压缩包名,进入解压后的文件路径
执行sudo ./configure --prefix=/usr/local/sqlite3 --disable-static --enable-fts5 --enable-json1 CFLAGS="-g -O2 -DSQLITE_ENABLE_FTS3=1 -DSQLITE_ENABLE_FTS4=1 -DSQLITE_ENABLE_RTREE=1"
后进入有configure的Python3.8的文件夹下再次编译安装,即sudo ./configre 回车,sudo make 回车,sudo make install 回车后再次测试正常
14.python中for在循环中对循环中的元素对象更改的操作,不会造成循环次数或者说最终循环的效果的,但循环完毕时,元素或者原对象会根据其被操作的情况而发生变化
15.Ubuntu16.04创建应用程序快捷方式至桌面:
找到应用软件启动程序路径、应用软件图标存储路径(可在网上下载后缀必须为.png)
在usr/share/applications下创建名为***.desktop的文件,文件内容如下
[Desktop Entry]
Name=firefox.desktop

     Exec=/home/jm/firefox/firefox     #指向可执行文件
     Icon=/home/jm/firefox/browser/chrome/icons/default/default48.png       #指向图标文件
     Terminal=false    #若为终端中启动,添true
     Type=Application
     保存后将此文件拷贝至/home/xiaoqun/Desktop下,在目录下修改该文件权限至创建者、用户组和其他用户都有可执行权限

16.Python2.7环境下搭建的scrapy框架时,当系统中同时存在pip19和pip9.0时,执行pip install *等安装命令和执行pip -version命令时报出ImportError:No module named _internal时,
是由于pip安装问题和安装路径下usr/bin/pip 中函数导入的名称错误导致,重新安装pip(对应Python的版本)后测试,若还不行将usr/bin/pip文件中form pip_internal import main改为form pip import main后即可恢复正常
17.Python2.7环境下搭建的scrapy框架成功后,执行爬虫命令的测试时,报出pipelines.py文件中ImportError:No module named conf和
object has no attribute ‘getitem’.
经查询得知是由于后面pip安装的scrapy包较新,之前产生的pipelines导入函数模块时的名称与形式与新版不一样,此时可以重新安装老版的scrapy库,或者改变至与新版形式一样的导入方式。
即将from scrapy.conf import settings改为from scrapy.utils.project import get_project_settings
settings=get_project_settings()
即可。
18.设置系统环境配置(/etc/profile)后需要重启系统配置

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值