PYTHON基础知识入门导图
2020-12-11 16:39:07 0 举报
AI智能生成
PYTHON基础知识梳理,看思维导图基本可入门
作者其他创作
大纲/内容
数据类型
字符串
方法
.title()
以首字母大写、其他字母小写方式显示每个单词
.upper()
全部大写
.lower()
全部小写
.rstrip/.lstrip/.strip
删除空白
操作
合并(拼接)
+
转义字符
换行
字符串中添加\n
制表符
字符串中添加\t
数字
类型
整数
浮点数
运算
运算符
四则 +-*/
乘方 **
求模(求余数) %
运算结果
参与运算中含浮点数,则结果为浮点数
转型
数字转字符
str(数)
字符转数字
int(符)
注释
#
起步
编程环境
IDE
运行
变量
定义规则
组成
字母、数字、下划线
禁止
不能含空格
不能数字开头
不能与关键字和函数名重名
建议
简短有描述性
慎用小写字母l和大写字母0
避免使用大写字母
[列,表,列,表,]
定义
一系列按特定顺序排列的元素组成
访问
正数:索引从[0]开始
倒数:第n个元素[-n]
修改
列表名称[索引] = 值
添加
末尾添加
列表名称[索引] .append(值)
中间插入
列表名称[索引] .insert(索引位置,值)
弹出
弹出栈尾元素
列表.pop()
可赋值给变量使用
弹出任意元素
列表.pop(索引号)
可赋值给变量使用
删除
根据索引号删除
del 列表[索引]
根据内容删除
列表.remove(内容)
排序
永久排序
正序
列表.sort()
倒序
列表.sort(reverse=True)
临时排序
正序
列表.sorted()
倒序
列表.sorted(reverse=True)
反转
列表.reverse()
永久性
反转列表元素排列顺序
长度
len(列表名称)
遍历
for item in list_of_items:
Use item to do something
统计
min(列表)
max(列表)
sum(列表)
列表切片
列表[索引号1:索引号2]
列表[:索引号2]
从列表头开始
列表[索引号1:]
直到列表尾
列表复制
列表1 = 列表2[:]
列表别名
列表1 = 列表2
特殊操作
数值列表
生成数值列表
步长1
range(n1,n2)
从n1开始创建(n2-n1)个数字
步长n
range(n1,n2,n)
从n1开始,不断地+n,直到达到或超过终值n2
创建数值列表
数值列表名称 = list(range(n1,n2))
#列表解析
列表 = [变量操作 for 变量 in 列表]
例:squares = [value**2 for value in range(1,11)]
print(squares)结果:[1,4,9,16,25,36.49,64,81,100]
(元,组):不可变的列表
类
创建类
class 类名(): #类名建议采用驼峰命名法,即每个单词的首字母大写,不使用下划线
def __init__(self, param1, param2) #开头和结尾2个"_",为特殊方法,创建实例自动运行
#初始化属性
self.property1 = param1/默认值
self.property2 = param2/默认值
def method1(self):
#method1方法
do something with self.property1 or self.property2
def method2(self):
#method2方法
do something with self.property1 or self.property2
创建实例
实例名 = 类名(param1, param2)
#建议实例和模块名称采用小写字母,单词间加下划线
param1,param2 自动匹配__init__方法形参
使用类和实例
修改属性 实例名.property = 值/或其他类的实例
通过方法修改属性
继承
class 类名(父类名):
def __init__(self, param1, param2,...)
super().__init__(self, param1, param2,...) #特殊函数,将父类(超类)与子类关联起来
--snip--
属性
可集成父类的属性,并定义新的属性值
方法
可继承或重写父类方法,可定义新的方法
导入
将类class封装在一个“module.py“文件中
导入整个模块
import module
导入特定类
from module inport class1, class2, ...
导入所有类
from module import *
不推荐
标准库
资源
pymotw.com
阅读标准模块文档
数据挖掘
人工智能
Django
MVT模式运行基本流程
分支主题
分支主题
Model
编写程序应有的功能,负责业务对象与数据库的映射(ORM)
View
负责业务逻辑,并在适当时候调用 Model和 Template
Template
负责如何把页面(html)展示给用户
开发流程
建立项目
创建虚拟环境
创建目录并在命令行下切换到该目录
python -m venv 虚拟环境名称
激活虚拟环境
Linux
在项目目录下
source 虚拟环境名称/bin/active
Windows
在项目目录下
虚拟环境名称\scripts\active
停用虚拟环境
deactive
直接关闭虚拟环境终端窗口
在激活的虚拟环境安装Django
pip install Django
在Django中创建项目
django-admin startproject 项目名称 .
最后的.标识在当前目录下
生成目录
以项目名称命名的目录
__init__.py
settings.py
指定Django如何与你的系统交互和如何管理项目
urls.py
应创建哪些网页来相应浏览器请求
wsgi.py
帮助Django提供他创建的文件
web server gateway interface
manage.py
创建数据库
python manage.py migrate
生成文件
sb.sqlite3
启动服务器
python manage.py runserver
http://localhost:8000
关闭 Ctrl+c
创建应用程序
激活虚拟环境
切换目录
python manage.py startapp 应用程序名称
创建
以应用程序命名的目录
models.py
from django.db import models
class Topic(models.Model) #模型类名称
字段名 = models.类型(长度等属性)
def __srt__(self):
return self.text 返回字段字符串表示
python manage.py makemigrations 应用程序名称
Django创建迁移文件00001_initial.py
python manage.py migrate 成功OK
admin.py
views.py
让项目包含应用程序
编辑settings.py
将 '应用程序名称'加入到INSTALLED_APP元组最后一个序列
Django管理网站
创建超级用户
python manage.py createsuperuser
向管理网站注册模型
自动
User/Group
手动
编辑admin.py
from django.contrib import admin
from 应用程序名称.models import 模型类名称
admin.site.register(模型类名称)
Django自带管理模型的网站
http://localhost:8000/admin
添加主题
每次修改数据模型时都包含这三步
如8000端口被占用,可通过 python manage.py runserver 端口号 命令改用其他端口
重构
文件处理
文件路径
#filename path
#Linux or OS X:directory/filename
#Windows:directory\filename
读文件
全文读取
with open(filename) as file_object:
contents = file_object.read()
user contents to do something
各行组成列表
with open(filename) as file_object:
lines = file_object.readlines()
for line in lines:
user line contents to do something
逐行读取
with open(filename) as file_object:
for line in file_object:
user line contents to do something
分支主题
写文件
写入空文件
每次打开写入时覆盖原有内容
with open(filename, 'w') as file_object:
file_object.write(contents)
写入多行
with open(filename, 'w') as file_object:
file_object.write(contents)
file_object.write(contents)
附件到文件
每次打开写入时将新内容附加到原有内容之后
with open(filename, 'a) as file_object:
file_object.write(contents)
附件多行
with open(filename, 'a') as file_object:
file_object.write(contents)
file_object.write(contents)
分析文本
.split()
内存与文件之间的数据导入导出
import json
内存>json.dump()>文件
with open(filename, 'w') as f_obj:
json.dump(data, f_obj)
内存<json.load()<文件
with open(filename) as f_obj:
variable = json.load(f_obj)
异常
目的
处理异常,避免崩溃
格式
try:
Test program
except ErrCodeName:
Exception process OR pass(什么都不做)
else:
success process
函数
基本定义格式
def function_name(param):
program code with param
return 返回值
参数
形参
定义
函数定义时标明的需要向函数传递的信息
默认值
在函数定义时设置形参的默认值(参数=值,等号两边不要有空格)
在函数定义时设置形参为可选(参数='',并放在参数表的最后,函数过程中配合if语句)
任意数量参数
函数(*形参)
函数(**形参)
实参
根据函数的定义向函数传递的实际参数值(变量|列表|字典)
位置实参
函数(位参1,位参2,...)
按顺序关联函数形参
可混合使用
关键字实参
函数(形参名=参数值1,形参名=参数值2,...)
按名称将参数值关联形参
返回值
return 变量|列表|字典
组成模块
将相似功能的函数封装到”module.py“文件
导入整个模块
import module as mod_alias(模块别名,可选)
module/mod_alias.function(参数) #调用函数
导入特定函数
from module import function as func_alias(函数别名,可选)
function/func_alias(参数) #调用函数
导入所有函数
from module import *
function/func_alias(参数) #调用函数
嵌套
字典列表
将字典作为列表项组成一个列表
列表字典
将列表名和列表作为键和值组成一个字典
字典字典
在字典中存储字典
列表列表
在列表中存储列表
{字:典,字:典}
定义
一系列的键-值对
访问
字典名['键名']
修改
字典名['键名'] = 新键值
添加
新建空字典
字典名 = {}
添加新键值对
字典名['新键名'] = 键值
弹出
删除
del 字典名['键名']
排序
sorted(dictionary.keys())
去重
set(dictionary.values())
长度
遍历
遍历键值
for key,value in dictionary(): #或 for key,value in dictionary.items():
do something with key and/or value
do something other with key and/or value
遍历键
for key in dictionary.keys(): #.keys()返回一个列表
do something with key
do something other with key
遍历值
for value in dictionary.values(): #.values()返回一个列表
do something with value
do something other with value
WHILE语句
语句格式
while 条件测试:
do something
do something other
if 条件测试:
break #退出循环
if 条件测试:
continue #进入到下一个循环
IF语句
条件测试
数字比较
== != < <= > >=
建议比较符左右两侧各留一个空格,便于阅读
列表测试
if 列表:
测试列表是否为空
条件组合
AND IN OR (NOT) IN
语句格式
if conditional_test:
do something
elif conditional_test2:
do something
elif conditional_test3:
do something
else:
do something
用户输入
输入变量=input("Echo input optins:")
PYTHON之禅
Tim Peter
import this
0 条评论
下一页