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基础知识 目录 简介的更多相关文章

  1. python基础知识1——简介与入门

    什么是Python:Python能做什么:安装与更新:第一个Python程序:变量:pyc字节码:编码:条件和循环:Python运算符:算数,比较,赋值,位,逻辑::::::::::::::::::: ...

  2. python基础知识-11-函数装饰器

    python其他知识目录 1.装饰器学习前热身准备 1.1装饰器简介 1.2装饰器热身分析 ) def func(): pass v1 = v2 = func #将函数名赋予一个变量,就和变量赋值是同 ...

  3. python基础知识-01-编码输入输出变量

    python其他知识目录 名词解释: 编辑器 ide 程序员 操作系统 ASCAII码 unicode utf-8 浅谈CPU.内存.硬盘之间的关系 操作系统及Python解释器工作原理讲解 关于编译 ...

  4. Python基础教程目录

    老猿Python博文目录 专栏:使用PyQt开发图形界面Python应用 老猿Python部分代码样例 老猿Python重难点知识博文汇总 老猿Python博客地址 第1章 Python学习环境构建目 ...

  5. python基础知识小结-运维笔记

    接触python已有一段时间了,下面针对python基础知识的使用做一完整梳理:1)避免‘\n’等特殊字符的两种方式: a)利用转义字符‘\’ b)利用原始字符‘r’ print r'c:\now' ...

  6. Python 基础知识(一)

    1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...

  7. python其他知识目录

    博客目录总纲首页 基础的重要性(程序员之路) 做一个“合格”的程序员(一)——基础能力 作为一个程序员,数学对你到底有多重要 同样是程序员,为什么别人比你更优秀? ------------------ ...

  8. Python基础知识-09-函数

    python其他知识目录 1.函数介绍 函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段.函数能提高应用的模块性,和代码的重复利用率.你已经知道Python提供了许多内建函数,比如pr ...

  9. 开发技术--浅谈python基础知识

    开发|浅谈python基础知识 最近复习一些基础内容,故将Python的基础进行了总结.注意:这篇文章只列出来我觉得重点,并且需要记忆的知识. 前言 目前所有的文章思想格式都是:知识+情感. 知识:对 ...

随机推荐

  1. (数据科学学习手札79)基于geopandas的空间数据分析——深入浅出分层设色

    本文对应代码和数据已上传至我的Github仓库https://github.com/CNFeffery/DataScienceStudyNotes 1 简介 通过前面的文章,我们已经对geopanda ...

  2. 使用R进行空间自相关检验

    「全局溢出」当一个区域的特征变化影响到所有区域的结果时,就会产生全局溢出效应.这甚至适用于区域本身,因为影响可以传递到邻居并返回到自己的区域(反馈).具体来说,全球溢出效应影响到邻居.邻居到邻居.邻居 ...

  3. vs code开发python时找不到当前目录下的文件、UnicodeDecodeError: 'gbk'

    一.vs code开发python时找不到当前目录下的文件, file = open("readme.txt")一直报错,找不到目录下面的文件 原来vscode 默认都是以打开的项 ...

  4. 操作系统-schedule函数

    1. Linux 0.11的调度函数schedule() 也就是找到了counter最大的进程,然后就跳出去执行switch_to,对应上面的优先级算法,而counter本身也是时间片,也作了轮转调度 ...

  5. str的常用方法

    注:s表示定义的一个字符串变量,如:s = 'hello string' 1.  s.index()  查找元素,若查到则返回该元素索引,含多个该元素则返回第一个,查不到则报错 s = 'hello ...

  6. 附014.Kubernetes Prometheus+Grafana+EFK+Kibana+Glusterfs整合解决方案

    一 glusterfs存储集群部署 注意:以下为简略步骤,详情参考<附009.Kubernetes永久存储之GlusterFS独立部署>. 1.1 架构示意 略 1.2 相关规划 主机 I ...

  7. MyBatis框架——延迟加载

    延迟加载也叫惰性加载或者懒加载,使⽤延迟是为了提⾼程序的运⾏效率,具体是通过尽量少执⾏ SQL 语句来提升效率.Java 程序与数据库的交互频率越低越好,MyBatis 提供的延迟加载功能就可以做到这 ...

  8. Linux---使用kill杀不掉进程解决方案

    今天打开Linux虚拟机,然后使用jps命令查看,莫名奇妙多了一个1889进程 然后使用kill杀掉后,再运行jps还是存在此进程.于是乎开始大量百度,最终找到了解决方案. 说的很清楚了,杀不掉的原因 ...

  9. HTTP2.0学习 与 Nginx和Tomcat配置HTTP2.0

    目录 一.HTTP2.0 1.1 简介 1.2 新的特性 1.3 h2c 的支持度 二.Nginx 对 http2.0 的支持 2.1 Nginx 作为服务端使用http2.0 2.2 Nginx 作 ...

  10. Python编写“求一元二次方程的解”

    #求一元二次方程的解 import math def equation(a,b,c): h=b*b-4*a*c #一元二次方程的解,百度来的 if h>=0: x1=(-b+math.sqrt( ...