python基础知识 目录 简介
1.1编程语言介绍与分类
什么是编程语言?
本质:与人类语言一样。沟通
电流+一堆硬件
高电压1 低电压0
高电压1 低电压0
高电压1 低电压0 8 晶体管
010101010101 play sound
1010000 open file
机器语言 直接跟硬件打交道
汇编语言 开发效率低
0101010101 <---play_m 高级语言
对底层语言的各种指令 做了封装
play_music("忽然.mp3")
人类代码--翻译-- 》机器语言 根据翻译方式不同产生2个流派 编译性语言 一次性
代表:c,c++,goland
优点:执行速度快
缺点;跨平台可移植性差
硬件:CPU,
软件
解释型语言 边执行边翻译
代表:python,JAVA,RUBY
优点:跨平台好
缺点:需要时间,速度慢
1.2 Python介绍。发展趋势
python发展史
Guido 龟叔 1989 Python
2005-2012 谷歌大量使用PY
2005豆瓣 python
2012 云计算
2014 AI兴起
2017 大众视野
应用: 1WEB开发 Django
2网络编程
3爬虫 制霸
4云计算 难度大
5人工智能,数据分析
6自动化运维
7科学运算
8游戏开发
1.3 注释
# 单行 快捷键Ctrl+?
""" """ 三引号 多行注释
1.4数据类型
1.5字符串
定义
name = "ALex"#有引号就是字符串
段落/多行 三引号""" """ 1.6布尔类型bool
a = 3
b = 5
b>a 正确/成立 真True b<a 错误/不成立 假 False
1.7 列表
[A,B,C]
增
插入 insert
追加 append
删
del remove
改
names[-1] = 23
查
查到元素小标并返回 index()
1.9读取用户指令
input 方法 接受到的所有数据 都以字符串 的格式处理 1.10格式化打印
%s 代表 字符串
%d 代表整数
%f 浮点
1.11运算符
1 % 取模 返回余数
** 幂运算 X的y次方
// 取整数 商
2 比较运算
== 等于
!=不等于
3 赋值运算
4 逻辑运算 1.12流程控制
-单分支
if
-双分支
if else
缩进:
顶级代码必须顶行写
同一级代码,缩进必须一致
缩进4个空格
-多分支
猜字游戏
if elif elif
1.13 while循环
break# 终止循环
continue# 终止此次循环,下一次
else 当程序正常结束 执行 Break结束不执行 第二章
2.1变量的创建过程与回收机制
id() 内存地址 python 有自动垃圾回收机制,可自动隔一段时间把没有变量名的自动回收
2.2如何判断 是否为字符串
type()数据类型
is /is not 数据类型运算(返回值为布尔值)
None 空值
三元运算
d = 值1 if 条件A else 值2
如果条件a成立,就取左边值1,则取 值2
2.3
数据类型 - 列表
切片
-左 》→右 步长默认为1(-1倒着切,右到左)
排序和反转
a[::-1] a.reverse()
sort()
2.4列表循环
for 循环
元组 值不可变
若远元组中包含其他可修改数据类型,则包含数据类型可变
2.5 字符串
有序字符的集合
可用切片。访问单个元素。不可变
**转义符 name = r"ja\nlk\t"
name.
capitalize,casefold,center,count ,endswith,find,
format,
查
find,index, count
改
replace
upper, lower, swapcase, casefold,strip,
split
格式化
format, ljust,rjust,join,
判断
isdigit,startswith.endswith, 2.6 字典
key- value 结构
key 必须为不可变数据类型
可存放多个value
无序
查询速度快 创建
1 dict(name = 'a',age = 15)
2{}.fromkeys(keys,100)#批量值生成字典
keys = [0, 1, 2, 3, 4]
增加
1 键值对
2 setdefault()#保护避免修改
删除
1d.pop()
2 d.popitem()随机删除
3d.clear
4del
修改
1 d['a']=25
2 dic.update(d2) d2 键值对添加到dic中
查操作
1 in
2 get()
3 keys() values() items()
循环字典
for i in dic:
print(i,dic[i])
集合
里面元素不可变,无序
去重效果
生成set()
新增 add(),不可添加列表等可变元素pop,remove,discard
查 in
集合运算: & 交集 | 并集 -差集 ^对称差集 2.7 二进制
ASCii 值 ord() 英文
GBK 中文
unicode gbk utf-8
py2vs py3 py2 ascii py3 支持unicode
10进制转2进制 bin
16进制hex
8进制oct
2.8 HASH 音译 哈希 散列值 一种复杂的算法
特征:不可逆
计算极快
用途: 密码 MD5加密算法
基于hash,保证同样的输出的结果值一直一致 文件的完整性校验 MD5值 数字签名
基于hash 的类型
dict
key 唯一
key 不可变
查询速度快,不受dic大小影响(二分法)
set 3.1用python操作文件
#### error 复制路径时 (引号前面+r)
encoding问题
1找到文件
2读,修改
3保存&关闭 1.f = open(filename)
2.f.read(100) f.read() 读所有,f.write(lll)
3.f.close() 文件打来模式,只能以一种模式打开
r 只读模式
w 创建模式
a 末尾添加
方法
readline readlines seek#光标移动几个字节
flush 强制从内存刷新到内存
tell 返回当前文件位置
truncate 截取
OS模块 修改文件名等 cys模块 cys.argv 读取外部命令 第三章 函数编程
3.1 bytes 类型
进制--》十进制--asscii/gbk/utf-8/ unicode
数据网硬盘上存,就要以相应的编码转成2进制
图片--》jpg/png --> 2进制
音乐--》MP3/wav-->2进制
视频--》mp4/mov-->2进制
bytes类型,以16进制形式表示,2个16进制构成一个byte。以‘b’来表识
py3默认编码是 utf8 3.2 深浅copy
list dict set
s = {name: alex...}
s2 = s,此时s2与s是共享 同一份数据的 copy一份新数据
浅copy,只copy第一层id地址
s2 = s.copy()
深copy 工具包copy中copy.deepcopy()
3.3 编码转换
1编码与解码
s.encode("utf-8")以utf-8 编码成2进制
s.decode("utf-8")从2进制解码成unicode
2编码转换
gbk---> unicode---->utf-8
3.4 函数
作用
参数
位置参数
默认参数
关键参数 #指令参数
# 位置参数>关键参数/默认参数
非固定参数
再定义参数时,不确定后面调用时,会传递多少个参数进来
*args()元组
**kwargs{}字典
函数返回值不写默认返回None
3.5全部变量与局部变量
局部变量内不可更改全局变量
不建议在局部变量内声明创建全局变量#global name 3.6 嵌套函数&匿名函数
匿名函数 c=lambda x,y:x**y
3.7 高阶函数
变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数。 只需满足以下任意一个条件,即是高阶函数
-- 接受一个或多个函数作为输入
-- return 返回另外一个函数 3.8递归函数
在函数内部,可以调用其他函数。如果一个函数在内部调用自已本身,这个函数就叫做递归函数。 3.9内置函数
bool 空的列表,字典,0 定为False
all 判断全部bool为True
any 有一个True就可以
callable 判断一个对象是否可以调用
dir 返回对象可调用属性
enumerate 返回列表的索引和元素
eval 可以把字符串形式的list,dict,set,tuple,int,在转换成原有的数据类型
exec 把字符串形式的代码,进行解译并执行“print”-->print
filter 过滤 lambda x:x>2 [1,2,3]
frozenset #把一个集合变成不可修改的
isinstance(b,frozenset) 判断数据类型
map lambda x:x**2 [1,2,3]返回[1,4,9]
round 四舍五入
zip 把多个列表拼成一个
3.10 名称空间 name space
L E G B
3.11 闭包
3.12 装饰器
高阶函数 闭包
3.13 列表生成式
a = [i**i for i in a]
3.14 函数生成器
边执行边运算 (惰性运算)
next()
斐波那契数列
yield #暂停 return
3.15 用生成器实现并发编程
3.16迭代器
可迭代对象:list,tuple,dict,str,生成器 可循环 方法:isinstance
可以被next调用的是迭代器
1.1编程语言介绍与分类
什么是编程语言?
本质:与人类语言一样。沟通
电流+一堆硬件
高电压1 低电压0
高电压1 低电压0
高电压1 低电压0 8 晶体管
010101010101 play sound
1010000 open file
机器语言 直接跟硬件打交道
汇编语言 开发效率低
0101010101 <---play_m 高级语言
对底层语言的各种指令 做了封装
play_music("忽然.mp3")
人类代码--翻译-- 》机器语言 根据翻译方式不同产生2个流派 编译性语言 一次性
代表:c,c++,goland
优点:执行速度快
缺点;跨平台可移植性差
硬件:CPU,
软件
解释型语言 边执行边翻译
代表:python,JAVA,RUBY
优点:跨平台好
缺点:需要时间,速度慢
1.2 Python介绍。发展趋势
python发展史
Guido 龟叔 1989 Python
2005-2012 谷歌大量使用PY
2005豆瓣 python
2012 云计算
2014 AI兴起
2017 大众视野
应用: 1WEB开发 Django
2网络编程
3爬虫 制霸
4云计算 难度大
5人工智能,数据分析
6自动化运维
7科学运算
8游戏开发
1.3 注释
# 单行 快捷键Ctrl+?
""" """ 三引号 多行注释
1.4数据类型
1.5字符串
定义
name = "ALex"#有引号就是字符串
段落/多行 三引号""" """ 1.6布尔类型bool
a = 3
b = 5
b>a 正确/成立 真True b<a 错误/不成立 假 False
1.7 列表
[A,B,C]
增
插入 insert
追加 append
删
del remove
改
names[-1] = 23
查
查到元素小标并返回 index()
1.9读取用户指令
input 方法 接受到的所有数据 都以字符串 的格式处理 1.10格式化打印
%s 代表 字符串
%d 代表整数
%f 浮点
1.11运算符
1 % 取模 返回余数
** 幂运算 X的y次方
// 取整数 商
2 比较运算
== 等于
!=不等于
3 赋值运算
4 逻辑运算 1.12流程控制
-单分支
if
-双分支
if else
缩进:
顶级代码必须顶行写
同一级代码,缩进必须一致
缩进4个空格
-多分支
猜字游戏
if elif elif
1.13 while循环
break# 终止循环
continue# 终止此次循环,下一次
else 当程序正常结束 执行 Break结束不执行 第二章
2.1变量的创建过程与回收机制
id() 内存地址 python 有自动垃圾回收机制,可自动隔一段时间把没有变量名的自动回收
2.2如何判断 是否为字符串
type()数据类型
is /is not 数据类型运算(返回值为布尔值)
None 空值
三元运算
d = 值1 if 条件A else 值2
如果条件a成立,就取左边值1,则取 值2
2.3
数据类型 - 列表
切片
-左 》→右 步长默认为1(-1倒着切,右到左)
排序和反转
a[::-1] a.reverse()
sort()
2.4列表循环
for 循环
元组 值不可变
若远元组中包含其他可修改数据类型,则包含数据类型可变
2.5 字符串
有序字符的集合
可用切片。访问单个元素。不可变
**转义符 name = r"ja\nlk\t"
name.
capitalize,casefold,center,count ,endswith,find,
format,
查
find,index, count
改
replace
upper, lower, swapcase, casefold,strip,
split
格式化
format, ljust,rjust,join,
判断
isdigit,startswith.endswith, 2.6 字典
key- value 结构
key 必须为不可变数据类型
可存放多个value
无序
查询速度快 创建
1 dict(name = 'a',age = 15)
2{}.fromkeys(keys,100)#批量值生成字典
keys = [0, 1, 2, 3, 4]
增加
1 键值对
2 setdefault()#保护避免修改
删除
1d.pop()
2 d.popitem()随机删除
3d.clear
4del
修改
1 d['a']=25
2 dic.update(d2) d2 键值对添加到dic中
查操作
1 in
2 get()
3 keys() values() items()
循环字典
for i in dic:
print(i,dic[i])
集合
里面元素不可变,无序
去重效果
生成set()
新增 add(),不可添加列表等可变元素pop,remove,discard
查 in
集合运算: & 交集 | 并集 -差集 ^对称差集 2.7 二进制
ASCii 值 ord() 英文
GBK 中文
unicode gbk utf-8
py2vs py3 py2 ascii py3 支持unicode
10进制转2进制 bin
16进制hex
8进制oct
2.8 HASH 音译 哈希 散列值 一种复杂的算法
特征:不可逆
计算极快
用途: 密码 MD5加密算法
基于hash,保证同样的输出的结果值一直一致 文件的完整性校验 MD5值 数字签名
基于hash 的类型
dict
key 唯一
key 不可变
查询速度快,不受dic大小影响(二分法)
set 3.1用python操作文件
#### error 复制路径时 (引号前面+r)
encoding问题
1找到文件
2读,修改
3保存&关闭 1.f = open(filename)
2.f.read(100) f.read() 读所有,f.write(lll)
3.f.close() 文件打来模式,只能以一种模式打开
r 只读模式
w 创建模式
a 末尾添加
方法
readline readlines seek#光标移动几个字节
flush 强制从内存刷新到内存
tell 返回当前文件位置
truncate 截取
OS模块 修改文件名等 cys模块 cys.argv 读取外部命令 第三章 函数编程
3.1 bytes 类型
进制--》十进制--asscii/gbk/utf-8/ unicode
数据网硬盘上存,就要以相应的编码转成2进制
图片--》jpg/png --> 2进制
音乐--》MP3/wav-->2进制
视频--》mp4/mov-->2进制
bytes类型,以16进制形式表示,2个16进制构成一个byte。以‘b’来表识
py3默认编码是 utf8 3.2 深浅copy
list dict set
s = {name: alex...}
s2 = s,此时s2与s是共享 同一份数据的 copy一份新数据
浅copy,只copy第一层id地址
s2 = s.copy()
深copy 工具包copy中copy.deepcopy()
3.3 编码转换
1编码与解码
s.encode("utf-8")以utf-8 编码成2进制
s.decode("utf-8")从2进制解码成unicode
2编码转换
gbk---> unicode---->utf-8
3.4 函数
作用
参数
位置参数
默认参数
关键参数 #指令参数
# 位置参数>关键参数/默认参数
非固定参数
再定义参数时,不确定后面调用时,会传递多少个参数进来
*args()元组
**kwargs{}字典
函数返回值不写默认返回None
3.5全部变量与局部变量
局部变量内不可更改全局变量
不建议在局部变量内声明创建全局变量#global name 3.6 嵌套函数&匿名函数
匿名函数 c=lambda x,y:x**y
3.7 高阶函数
变量可以指向函数,函数的参数能接收变量,那么一个函数就可以接收另一个函数作为参数,这种函数就称之为高阶函数。 只需满足以下任意一个条件,即是高阶函数
-- 接受一个或多个函数作为输入
-- return 返回另外一个函数 3.8递归函数
在函数内部,可以调用其他函数。如果一个函数在内部调用自已本身,这个函数就叫做递归函数。 3.9内置函数
bool 空的列表,字典,0 定为False
all 判断全部bool为True
any 有一个True就可以
callable 判断一个对象是否可以调用
dir 返回对象可调用属性
enumerate 返回列表的索引和元素
eval 可以把字符串形式的list,dict,set,tuple,int,在转换成原有的数据类型
exec 把字符串形式的代码,进行解译并执行“print”-->print
filter 过滤 lambda x:x>2 [1,2,3]
frozenset #把一个集合变成不可修改的
isinstance(b,frozenset) 判断数据类型
map lambda x:x**2 [1,2,3]返回[1,4,9]
round 四舍五入
zip 把多个列表拼成一个
3.10 名称空间 name space
L E G B
3.11 闭包
3.12 装饰器
高阶函数 闭包
3.13 列表生成式
a = [i**i for i in a]
3.14 函数生成器
边执行边运算 (惰性运算)
next()
斐波那契数列
yield #暂停 return
3.15 用生成器实现并发编程
3.16迭代器
可迭代对象:list,tuple,dict,str,生成器 可循环 方法:isinstance
可以被next调用的是迭代器
python基础知识 目录 简介的更多相关文章
- python基础知识1——简介与入门
什么是Python:Python能做什么:安装与更新:第一个Python程序:变量:pyc字节码:编码:条件和循环:Python运算符:算数,比较,赋值,位,逻辑::::::::::::::::::: ...
- python基础知识-11-函数装饰器
python其他知识目录 1.装饰器学习前热身准备 1.1装饰器简介 1.2装饰器热身分析 ) def func(): pass v1 = v2 = func #将函数名赋予一个变量,就和变量赋值是同 ...
- python基础知识-01-编码输入输出变量
python其他知识目录 名词解释: 编辑器 ide 程序员 操作系统 ASCAII码 unicode utf-8 浅谈CPU.内存.硬盘之间的关系 操作系统及Python解释器工作原理讲解 关于编译 ...
- Python基础教程目录
老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python部分代码样例 老猿Python重难点知识博文汇总 老猿Python博客地址 第1章 Python学习环境构建目 ...
- python基础知识小结-运维笔记
接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...
- Python 基础知识(一)
1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...
- python其他知识目录
博客目录总纲首页 基础的重要性(程序员之路) 做一个“合格”的程序员(一)——基础能力 作为一个程序员,数学对你到底有多重要 同样是程序员,为什么别人比你更优秀? ------------------ ...
- Python基础知识-09-函数
python其他知识目录 1.函数介绍 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如pr ...
- 开发技术--浅谈python基础知识
开发|浅谈python基础知识 最近复习一些基础内容,故将Python的基础进行了总结.注意:这篇文章只列出来我觉得重点,并且需要记忆的知识. 前言 目前所有的文章思想格式都是:知识+情感. 知识:对 ...
随机推荐
- Jave基本数据类型
基本类型,或者叫做内置类型,是JAVA中不同于类的特殊类型.它们是我们编程中使用最频繁的类型,因此面试题中也总少不了它们的身影,在这篇文章中我们将从面试中常考的几个方面来回顾一下与基本类型相关的知识. ...
- 使用AQS自定义重入锁
一.创建MyLock import java.util.concurrent.TimeUnit; import java.util.concurrent.locks.AbstractQueuedSyn ...
- 深入理解Java之线程池(网络笔记)
原文链接:http://www.cnblogs.com/dolphin0520/p/3932921.html 附加:http://www.cnblogs.com/wxd0108/p/5479442.h ...
- Nginx 推流 拉流 --- 点播直播
1. 准备环境 安装操作系统Cenos 配置yum源 yum:https://developer.aliyun.com/mirror/ Nginx依赖 gcc-c++ zlib pcre openss ...
- Mysql数据库定时全库备份
如下脚本用于mysql全库定时备份 mysql_dump_script.sh #!/bin/bash #保存备份个数,最多保留4个文件 number=4 #备份保存路径 backup_dir=/db/ ...
- MATLAB神经网络(4) 神经网络遗传算法函数极值寻优——非线性函数极值寻优
4.1 案例背景 \[y = {x_1}^2 + {x_2}^2\] 4.2 模型建立 神经网络训练拟合根据寻优函数的特点构建合适的BP神经网络,用非线性函数的输入输出数据训练BP神经网络,训练后的B ...
- C# Socket编程实现简单的局域网聊天器
目录 前言 编码 服务端监听接口 客户端连接接口 文字发送接口 文件发送接口 信息接收接口(文字与文件) 使用 注意事项 源码 前言 最近在学习C# Socket相关的知识,学习之余,动手做了一个简单 ...
- 前后端分离项目采用Prerender的SEO优化流程
原文: https://blog.ccyws.cn/articles/4 一.概述 近年开发模式变化,新建Web站点采用前后端分离部署已经是大势所趋.但是,搜索引擎爬虫不会执行js脚本从后端加载数据, ...
- 记一次华为eNSP设备网络项目基本配置过程
下图为综合项目示例图,详细命令见图下: 屏蔽垃圾信息undo terminal monitorundo terminal trappingundo terminal loggingundo termi ...
- Linux系统之LNMP及nginx反向代理实现
1.编译安装LNMP,并安装wordpress 首先准备环境,编译安装LNMP可以是多台主机,也可以是单台主机,把nginx,mysql,php都集中安装在一个主机上:我这里以一台主机为例吧!! 一. ...