这里写目录标题
- python学习总结
- python学习参考网址
- 环境配置
- ⚖ 包管理说明(涉及包的位置,包的查找原理,如何设置模块,__init.py__)
- conda和pip换源
- conda创建激活和切换环境
- pip进行包的管理
- 🪝[pip官网,用来做包查询的](https://pypi.org/)
- python开发使用的IDE
- IDE配置python解释器
- python语法
- 细节——数字操作
- 细节——字符串操作
- 细节——python标准库
- UI开发——thinker
- 打包python程序为exe文件
- auto-py-to-exe
- WebApi开发
- FastAPI
- Flask
- Django
- Gradio
- orm框架
- SQLAlchemy
- peewee
- 定时器
- APScheduler
python学习总结
python及具有脚本语言的简洁,又具有编写面向对象程序的高级特性,可以说是各种软件开发的利器了特别是,当然目前他的主要用途就是在数据处理方面,通过简洁的语法提高数据处理的效率
python学习参考网址
python官网
环境配置
python环境使用conda+pip进行创建和管理。
conda安装建议使用miniconda(因为miniconda体积小,基本没有其他无关的包。anaconda体积大,而且下载的包大部分用不到,通过UI界面进行操作很卡,而且升级之后很容易闪退。So,使用miniconda通过命令行进行环境创建管理是十分方便友好的,命令不用记太多,忘记了可以–help(任何命令行工具都可以用这种方式查看)查看奥),miniconda下载地址:conda下载地址 (安装过程中使用默认设置,当然在添加到系统变量的选择上这里是推荐选择的(这样就可以在系统的命令行直接用conda了),然后其他的一直确定即可)
⚖ 包管理说明(涉及包的位置,包的查找原理,如何设置模块,init.py)
- pip 或者conda管理的包只是
负责管理包的下载和安装,删除,清单,迁移。
,不负责代码的构建等其他功能和maven不同。- pip下载的文件放在了lib/sit-packages目录下,这个目录默认设置在了sys.path里
包下载的位置,程序通过sys.path设置后,根据设置的路径来寻找
- 配合包管理的文件是__init.py__文件,有这个文件的文件夹就是一个独立的包,程序在import这个模块的时候会自动执行__init.py__里的代码的,一般__init.py__的内容为空,如果你的模块内还有子模块,那就可以在__init.py__里import 所有的子模块,这样的话外部import * from当前模块的时候会自动把所有子模块也导入进去,就不用手动导入所有模块了。
conda和pip换源
使用conda前首先要换源,建议换,可以先试试下不下来再换也来得及。
conda config --add channels http://mirrors.aliyun.com/anaconda/pkgs/main
conda config --add channels http://mirrors.aliyun.com/anaconda/pkgs/r
conda config --add channels http://mirrors.aliyun.com/anaconda/pkgs/msys2
conda config --set show_channel_urls yes# 重置源
conda config --remove-key channels
conda config --remove channels https ://mirrors.tuna.tsinghua.edu.cn/anaconda/pkgs/free/
# 使用代理,不用换源
conda config --set proxy_servers.http http://127.0.0.1:8086 #
conda config --set proxy_servers.https https://127.0.0.1:8086
pip使用的时间是conda环境创建完毕之后,在conda创建的环境内进行换源。(该部分放到这里是为了文章归纳的整齐一些。)
pip config set global.index-url https://pypi.tuna.tsinghua.edu.cn/simple
阿里云 http://mirrors.aliyun.com/pypi/simple/
豆瓣http://pypi.douban.com/simple/
清华大学 https://pypi.tuna.tsinghua.edu.cn/simple/
中国科学技术大学 http://pypi.mirrors.ustc.edu.cn/simple/
华中科技大学http://pypi.hustunique.com/
conda创建激活和切换环境
1.创建环境 可以指定python版本,这个python版本本机没有也可以,到时候会自动安装(前提是能上网!!!)
conda create --name yourEnv python=3.8
将创建一个名为/tmp/test-env的环境,该环境位于/tmp/中,而不是默认的.conda中.推荐使用可以自定义路径
conda create --prefix /tmp/test-env python=3.8
2.激活环境,
windows ==> conda activate yourEnv
linux/mac ==> source activate yourEnv
conda deactivate
3.列出环境
conda env list
4.删除环境
conda env remove -n yourEnv
conda remove -n chatgpt --all
5.查看环境
conda config --show
pip进行包的管理
conda install pip install 都可以,pip conda都可以进包管理,不过pip仓库里收集的包更多一些,用来进行包的安装会好些,如果pip安装不顺就用conda试试,再不行就是包的问题了,可能要看看其他办法了奥。
🪝pip官网,用来做包查询的
#######################################################################
# 安装包相关的命令
# pip安装包
pip install 包名# pip根据指定的源安装包
pip install -i https://mirrors.aliyun.com/pypi/simple# pip根据requirements文件安装包
pip install -r requirements.txt# pip安装whl包
pip install xx.whl# pip根据requirements.txt安装指定路径下的whl包
# 这里的--find-links只能是当前的路径下,不能考虑切换路径,所以要在whl的目录下运行这个命令奥
pip install --no-index --find-links=./ -r ./requirements.txt# pip升级包
pip install --upgrade #库名# pip列出可升级包
pip list --outdate
######################################################################### 导出 包相关的命令
# pip导出依赖
pip freeze >requirements.txt# pip增强导出依赖 这样导出的依赖没有file@//等乱七八糟的的内容
pip list --format=freeze > requirements.txt# 管理依赖树
pipdeptree 工具来管理依赖树# 项目依赖治理(pip-autoremove)
pip install pip-autoremove
pip-autoremove flask -y
#######################################################################
# 下载whl包相关的命令,pip安装的一个一个的包其实是可以用一种whl格式的文件作为压缩包进行保存迁移的,
# 使用如下命令可以直接下载whl包,而不是展开的库,下载的whl包可以发到没有网的环境下进行安装的。
# -d 下载包到指定的位置
pip download package -d "保存路径"# -r 根据requierements文件进行包的下载安装
pip download -r requirements.txt# -r -d可以组合使用
pip download -d "F:\ML\temp\py111" -r requirements.txt
对于没有网的环境进行部署,可以考虑使用pip down下载所有的whl包,和一个requriemets文件,然后在没有网的环境下使用pip install --no-index --find-links=./ -r ./requirements.txt 进行安装配置,当然没网配置环境很恶心了,遇到这种情况只能good luck了,要有耐心。
python开发使用的IDE
推荐使用pycharm啦
IDE配置python解释器
使用pycharm新建一个项目,进去之后点击设置(左上角file->setting)或者快捷键(Ctrl+alt+S)进入如下界面,选择python解释器然后点击后面的添加,然后弹出第二幅图,选择现有环境,找到conda创建的环境路径,然后选择里面的python.exe。 (初学者可以考虑安装一个中文插件先适应一下这个IDE然后再关掉,如何安装中文插件可以百度奥,当然细心的人可以看到下图左边区域有个插件选项,点击后搜索chinese simple…点击安装就可以了很简单,重启IDE后生效。)
python语法
基础语法可以参考这:
参考连接
细节——数字操作
保留两位小数 参考python怎么保留两位小数?几种方法总结!
# 字符串格式化
a = 12.345
print("%.2f" % a) # %代表格式化输出,.2代表小数点后保留两位,f代表数据类型是浮点型# 内置函数
a = 12.345
a1 = round(a, 2) #将a通过round函数处理后赋值给a1,传入的2代表保留两位小数
print(a1)#decimal函数
from decimal import Decimal
a = 12.345
Decimal(a).quantize(Decimal("0.00")) # 使用默认的进位方式(同round)“0.00”表示保留小数点后两位# 正则表达式
import re
a = 12.345
re.findall(r"\d{1,}?\.\d{2}", str(a)) #使用正则匹配,将符合规则(一个小数点前有很多位数字,小数点后面只有两位数字的片段)字符串片段取出来
细节——字符串操作
1.字符串格式化
%格式:格式化表达式format % values。format是一个字符串,values可以是一个对象、元组或字典,format中会有若干个’%'开头的标记转换符
format格式:另一种表达式的格式式 “str{}“.format(values) ,这种方式更加灵活和被官方推荐,values可以是一个对象、元组或字典 字符串格式化官方文档
#########################################
# %格式
s = "我叫%s, 今年%d岁。" % ("老六", 18) # 我叫老六, 今年18岁。
print(s)
s.format()
##########################################
#format格式
print('{},{}'.format('hello','world')) #hello,world
print('{0},{1},{0}'.format('hello','world')) #位置编号,可以输出多次 hello,world,hello
print('{a},{b}'.format(a='hello',b='world')) #a,b关键词 hello,world
print('{:.2%}'.format(0.12354)) #百分比
print('{:,}'.format(123456789)) #会计千位分隔符
print('{:.2f}'.format(31.31412)) #保留2位小数
dict={'name':'tom','age':20}
print('name is {name},age is {age}'.format(**dict)) #name is tom,age is 20
细节——python标准库
python标准库——官方文档
UI开发——thinker
用python做一些UI小程序,可以做科学研究或者替代简单的计算工作提高生成效率,或者自娱自乐都可以
打包python程序为exe文件
开发出来的UI界面往往需要打包成一个EXE文件给别人使用,这时候就需要一个打包软件来把他打包了
auto-py-to-exe
推荐使用该软件进行打包,因为改软件是界面化的,可视操作,其实就是封装了pyinstaller,避免了书写配置文件。
正常情况下python做的软件一般是一个小软件一个py文件,直接用auto-py-to-exe根据软件提示选择py文件,选择单文件,和基于窗口的即可。
如果想详细了解pyinstaller如何使用,请参考:
如果想了解详细的auto-py-to-exe可以参考这:
# 安装
pip install auto-py-to-exe# 启动
auto-py-to-exe
WebApi开发
三个比较流行的开发框架
FastAPI
Flask
Django
Gradio
orm框架
SQLAlchemy
使用参考
peewee
使用参考
定时器
APScheduler
中文文档
英文文档
教程