本文仅限python助记,不提供具体解释!
一、语言优势:
简单,免费、开源,可移植性,面向对象,可扩展性,丰富的库
二、环境配置:
在path量中添加 python的安装路径 ,以及 安装目录的scripts路径
三、初步认识
1. 首行 #utf-8 是为了兼容python2.x版本
2.编码规范:
# 单行注释
"""
""" 多行注释
3.变量:
变量名 = 值
4.基本类型:
整数 int %d
布尔 bool
浮点 float %f
字符 str %s r f u
空值 None
5.输入输出:
input()
print()
6.输出格式:
"%s" % (name)
str.format("name",name=name)
f'{name}'
7.复杂数据类型:
列表 [] list
元组 () tuple
字典 {} dict
操作:
删除 del
使用 []
补充:
0b 0O 0X L
True False
complex decimal
%% %c %s %d %u %o %x %X %e %E %f %g %G %p
四、基本语法
1.算数运算符:
幂 ** **=
整除 // //=
2.位运算符:
与 &
或 |
异或 ^
取反 ~
左移 <<
右移 >>
3.逻辑运算符:
与 and
或 or
非 not
4.成员运算符:
在 in
不在 not in
5.身份运算符:
等于 is
不等于 is not
6.选择结构:
if elif else
7.循环结构:
停止 break
加速 continue
指空 pass
while
for in
补充:
range(start,end,scan)
+ - * / %
五、函数
1.自定义函数:
def 函数名(形参):
"""说明"""
return 返回值
函数名(实参)
参数说明:
*arg 元组
**arg 字典
传递说明:
值传递 (数字,字符串,元组) 不可变对象
引用传递 (列表,字典) 可变对象
2.字符串函数:
变量名 = '值'
使用变量 [头下标:尾下标]
常用字符串函数;
a.count(b,start=0,end=len(a))
s.encode
a.endswith(b,start=0,end=len(a))
a.find(b,start=0,end=len(a))
s.format()
a.index(a,start=0,end=len(a))
s.isdigit()
s.islower()
s.isspace()
b.join(a)
a.replace(b,c,num=count(b))
a.split(str="",num=s.count(str))
a.startswith(b,start=0,end=len(a))
s.title()
s.upper()
3.集合类操作函数:
{}
可变集合 set()
不可变集合 fset()
集合的使用:
in、not in
==、!=
s.add()
s.clear()
s.dicard()
s.pop()
s.remove()
s.difference(b)
s.intersection(b)
s.issubset(b)
s.issuperset(b)
s.intersection_update(b)
s.difference_update(b)
s.isdisjoint(b)
s.symmetric_difference(b)
s.symmetric_difference_update(b)
s.union(b)
联合 | union()
交集 & and intersection()
查补 - difference()
对称差分 ^ XOR
补充:
集合、列表、元组、字符串 可互相转换
常用函数:
输出函数 print()
类型函数 type()
长度个数函数 len()
补充:
%字符 转换标志 - + 0 . d,i o u x X e E f.F g G C r s
魔术方法 __魔术名__
六、面向对象
1.类的定义:
class 类名:
"""说明"""
对象名 = 类名(实参)
构造方法:
def __init__(self,name)
self.name=name
类的方法:
def 方法名(self):
"""说明"""
2.继承:
父类 子类
class 子类名(父类名):
"""说明"""
3.模块:
自定义模块:
一个 .py 文件就是一个模块
导入模块:
import 模块名 as 别名
from 模块名 import 函数名 as 别名
from 文件名 import 文件名
补充:
dict.values() random.uniform(start,end) dict.keys()
七、数据处理
1.文件I/O:
(1) 目录操作:os模块包含的函数
os.getcwd()
os.listdir()
os.remove()
os.removedirs(r"c:\python")
os.path.isfile()
os.path.isdir()
os.path.isabs()
os.path.exists()
os.path.split()
os.path.splitext()
os.path.dirname()
os.path.basename()
os.system()
os.getenv() 与 os.putenv()
os.linesep
os.name
os.rename(oldFileName,newFileName)
os.makedirs(r"c:\python\test")
os.mkdir("test")
os.stat(file)
os.chmod(file)
os.exit()
os.path.getsize(filename)
(2) 打开文件:
文件对象名 = open(文件名, 打开模式, 其他)
只读 r rb r+ rb+
只写 w wb w+ wb+
追加 a ab a+ ab+
(3) file对象属性:
file.closend
file.mode
file.name
file.softspace
(4) 读取文件:
文件对象名.read(count)
(5) 关闭文件:
文件对象名.close()
(6) 写入文件:
文件对象名.write(string)
2.JSON解析和XML解析:
JSON解析:
import json
转成JSON字符串 json.dumps()
转成python对象 json.loads()
XML解析:
SAM DOM ElementTree
3.CSV和Excel的高效解析:
CSV解析:
读取 reader()
获取下一条记录 next()
写入 writer()
Excel解析:
读取 xlrd模块
写入 xlwt模块
4.异常:
抛出 raise
捕捉 try except else finally
补充:
Exception AssertionError AttributeError IOError ImportError
IndentationError IndexError KeyError KerboardInterrupt
NameError SynataxError TypeError UnboundLocalError ValueError
八、数据库
1.数据库连接:
安装pymysql
import pymysql
conn = pymysql.connect(host,port,user,passwd,db,charset)
2.数据库查询:
(1) 获取游标对象
cursor = conn.cursor(cursor=pymysql.cursors.DictCursor)
(2) 提交数据库连接
conn.commit()
(3) 增删改
单条记录 cursor.execute()
多条记录 cursor.executemany()
(4) 查询
剩余前1 fetchone()
剩余前n fetchmany(n)
全部 fetchall()
(5) 关闭游标,关闭连接
cursor.close()
conn.close()
3.事务机制:
原子性,一致性,隔离性,持久性
try 里放 commit()
except 里放 rollback()
4.数据库操作的封装:
import contextlib
@conterxtlib.conterxtmanager
yield
with 函数 as 别名:
补充:
import sys, reload(sys), sys.setdefaultencoding("utf-8")
cursor.callproc
__enter__() __exit__()
九、Web
1.Flask框架安装:
flask 依赖包 Jinja2 MarkupSafe Werkzeug Click itsdangerous
pip安装:
pip install flask -i 镜像网站
Flask的使用:
from flask import Flask
注册装饰器:
app=Flask(__name__)
注册路由:
@app.route('/')
跑起来:
app.run(debug=True)
2.补充:
静态文件 static
响应的html文件 templates
主程序模块 app.py
config.ini 文件内容 DEBUG=True
使用方式 app.config.from_pyfile(‘config.ini’)
静态路由
app.route(url)
def 视图函数():
"""说明"""
动态路由
app.route(url/<变量名>)
def 视图函数(变量名):
"""说明"""
flask支持的类型转换器 缺省 int: float: path:
route路由参数
url
methods=["GET", "POST"]
defaults={key:value}
strict_slashes=True/False
视图函数呈现html文件
render_template()
jinja2模版
组织语句 {% * %}
{% end* %}
输出表达式 {{*}}
输出模版注释 {# * #}
获取请求信息 request
* = data form args cookies headers method url files
变量名 = request.*.get('元素名')
如需转载请在文章尾部注明 PHSTIC EANE 或 eane ,感谢合作!