python3复习
一、基础1
1.运行python代码
cmd->python 文件路径/文件名称
2.解释器
针对linux/uinux系统
3.注释
单行注释 #
多行注释 三个单引号或三个双引号
4.变量
法律规则:字母、数字、下划线组成,数字不能开头
道德规则:定义变量要有意义,不能用中文,推荐用下划线规则定义变量
5.常量
python没有常量,约定俗成用变量名全部大写表示常量
6.基础数据类型(初始)
数字-int
字符串-str
表示:加引号的字符。单行字符用单引号或双引号;多行字符用三引号
作用:储存少量数据
字符串拼接: +
字符串*数字
布尔-bool
作用:用于逻辑判断
7.用户交互
方法:input
类型:str(用户输入的内容默认是字符串)
8.流程控制语句--if
单分支
if 条件:
满足条件后要执行的代码
双分支
if 条件:
满足条件后执行的语句
else:
不满足条件后执行的语句
多分支
if 条件1:
满足条件1后执行的语句
elif 条件2:
满足条件2后执行的语句
else:
不满足条件1和2执行的语句
9.条件循环语句-while
死循环
条件判断语句
标志位-flag
break,结束循环
continue,结束当前循环,进入下一次循环
二、基础2
1.格式化输出
类别:%s,%d
格式:'****%s***' % 变量名
2.while……else……
执行else的条件
while语句执行结束
在while语句的执行过程中没有被break打断
3.运算符
数学运算符
赋值运算符
比较运算符
逻辑运算符
优先级:()>not>and>or
比较运算语句和比较运算语句
规则:优先级、比较运算判断
数字和数字
int->bool
bool->int
规则:优先级、x or y,x为True,reture x;x为False,reture y,and与or相反
数字与比较运算语句
规则:优先级
三、基础数据类型
1.数字int
二进制与十进制之间的转化
操作方法:bit_length()
2.布尔bool
int->bool,非0为True
bool->int,True为1,False为0
int->str
str->int,前提:str由数字组成;作用:去数字的空格
str->bool,非空为True
bool->str,没意义
3.字符串
注意:字符串是不可变数据类型,因此对str进行操作后,要赋值给一个新的变量名
格式:用引号引起来的字符
作用:储存少了数据
索引与切片
索引:从0开始
切边:s[start:end:step],1)顾头不顾尾.2)step默认为1.3)step为负数时,索引值从大到小
常用方法
1).字母大小写
首字母大写:capitalize()
全部大写:upper()
全部小写:lower()
大小写互换:swapcase()
标题首字母大写:title(特殊字符/不写),不写为空格,以特殊字符为分割点看作标题
2).根据元素查索引
find(元素),返回该元素的索引值,若没有这个元素,返回值为-1
index(元素),返回元素的索引值,若没有这个元素,会报错
3).公用方法
len(str),获取字符串的长度
count(元素),获取该元素的个数,可切片(在方法里切边用逗号)
4).格式
strip(特殊字符),去除str两边的特殊字符,没写是去除空格;lstrip(),rstrip()
center(长度,填充的字符),了解即可
expandtabs(),\t 占8位,了解即可
5).startswith和endswith
startswith和endswith可切片(字符串方法的切片用逗号)
6).分割
splite(元素),以该元素为断点进行分割,分割后改元素消失
作用:str->list
7).字符串格式化输出
'{},{}'.format(变量名1, 变量名2)
'{0},{0}'.format(变量名1)
'{name},{age}'.format(age=10, name='tom')
10).替换
replace(旧的,新的,数量),数量不写为全部
11).is系列
isdight(),改字符串全部由数字组成
isalpha(),改字符串全部由字母组成
4.列表list
格式:[]
切片和索引
增
append(value),在list的最后增加value
insert(index,value),通过索引值插入value
extend(iterable),迭代追加
删
pop(index),根据索引删除元素,若索引为空,则删除最后一个元素;返回值为删除的value,会报错
remove(value),根据元素值删除元素,返回值为None
clear(),清空list
del,删除列表,可以使用切片
改
索引,通过索引进行更改
切片,通过切片进行更改,值迭代增加(了解)
按照切片步长改,必须一一对应(了解)
查
value:索引、切片、for循环
index:通过index(value),获取value对应的index
公共方法
count(value),统计改元素在listt的出现次数
len(),list的长度
排序
sort():正序排序
sort(reverse=True):倒序排序
反向
reverse():将列表反向
'字符'.join(iterable)
list->str,注:list不能含有数字
str也可以使用join()方法
嵌套列表
5.元祖tuple
格式:()
只读列表,可进行的操作:索引、切边、for循环
嵌套元祖
特点:儿子不可以更改、孙子可以
6.字典dict
格式:{key: value},key必须可哈希
增
dic[key]=value,若key存在,则是改;若key不存在,则是增
dic.setdefault(key, value),v默认是None.若key存在,则value不变;若key不存在,则增加
删
pop(key),根据key删除值,返回值为与key对应的value,若key不存在,会报错,但加了说明就不会报错:pop(key, 输出说明/None)
popitem(),随机删除,几乎没有
clear(),清空dict
del,删除dict、根据key值删除
改
索引
update(),覆盖原来的value
查
索引,若key不存在,报错
get(key),返回value,若key不存在,则返回None
fromkeys(iterables, value),迭代增加
字典的嵌套
7.集合set
格式:{}
特点:set是可变数据类型,元素是不可变数据类型,无序,元素唯一
增
add(value),增加一个元素值
update(iterable),增加可迭代对象
删
pop(),随机删除
remove(value)
clear(),清除set
del set,删除set
查
for循环
集合运算
交集:&
并集:|
差集:-
反交集:^
子集:<
超集:>
不可变set
frozenset(),变成不可变的数据类型
8.其它
range(n,m,l),range()相当于列表,n,m,l相当于切片,n=0时,n可以不写
for循环,在str、list、tuple、dict、set都可以进行for循环,
可变数据类型 list、dict、set,在for循环过程中删除元素会报错
python3复习的更多相关文章
- Python3基础复习
目录 基本语法 运算符 输出格式 数据类型 数据结构 函数 面向对象 补充 异常 模块和包 文件 时间 线程和进程 基本语法 基本语法只列举与Java不一样的. 运算符 and, or而非 & ...
- apache2.4 +django1.9+python3+ubuntu15.10
这是我这几天学习部署django的总结,中间出现了不少的问题.特此记录下来,用来复习巩固,同时也希望给想学习的同学一些参考. 第一步:我在ubuntu上装的是python3.sudo apt-get ...
- python3的变量作用域规则和nonlocal关键字
也许你已经觉得自己可以熟练使用python并能胜任许多开发任务,所以这篇文章是在浪费你的时间.不过别着急,我们先从一个例子开始: i = 0 def f(): print(i) i += 1 prin ...
- 从零开始学习PYTHON3讲义(十五)让画面动起来
<从零开始PYTHON3>第十五讲 虽然看起来绘图和音乐并不相关,但是听过了上一讲的内容你一定知道,这是游戏编程中四个需要处理内容的两部分,这两部分必须同时.并行的处理,不能因为某一项计算 ...
- 从零开始学习PYTHON3讲义(八)列表类型跟冒泡排序
<从零开始PYTHON3>第八讲 前面我们见过了不少的小程序,也见过了不少不同类型的变量使用的方法.但目前我们涉及到的,还都是单个的变量和单个的立即数.以变量来说,目前我们见到的,基本都 ...
- 从零开始学习PYTHON3讲义(五)while循环和棋盘麦粒问题
<从零开始PYTHON3>第五讲 上一节课重点学习了字符串,并且传递了一个重要的理念,就是程序要对开发人员自己和用户都足够友好.在这个过程中,利用字符串给出充分.完整.准确的提示是非常重 ...
- 从零开始学习PYTHON3讲义(四)让程序更友好
<从零开始PYTHON3>第四讲 先看看上一讲的练习答案. 程序完成的是功能,功能来自于"程序需求"("需求"这个词忘记了什么意思的去复习一下第二讲 ...
- Python3 与 C# 并发编程之~ 协程篇
3.协程篇¶ 去年微信公众号就陆陆续续发布了,我一直以为博客也汇总同步了,这几天有朋友说一直没找到,遂发现,的确是漏了,所以补上一篇 在线预览:https://github.lesschina.c ...
- 廖雪峰Python3笔记
主要复习过一遍 简介 略 安装 略 *** 第一个Python程序 第一行的注释: # _*_ coding: utf-8 _*_ #!/usr/bin/env python3 print() 可以接 ...
随机推荐
- [学习笔记]Pollard-Rho
之前学的都是假的 %%zzt Miller_Rabin:Miller-Rabin与二次探测 大质数分解: 找到所有质因子,再logn搞出质因子的次数 方法:不断找到一个约数d,递归d,n/d进行分解, ...
- Nodejs之使用express框架搭建WEB应用
首先创建一个index.js,在里面引入相关的中间件,如果没有这些中间件,则需要在nodejs里进入index.js所在的文件夹安装这些模块,安装命令:npm install express ex ...
- linux中inode的理解
一.inode是什么? 理解inode,要从文件储存说起. 文件储存在硬盘上,硬盘的最小存储单位叫做"扇区"(Sector).每个扇区储存512字节(相当于0.5KB). 操作系统 ...
- python字符串(str)
# value = "raitOrEi" # v = value.capitalize()#首字母大写 # print(v) # v1 = v.casefold()#全部变小写,不 ...
- Helm Chart 一键部署 Jenkins
Jenkins Jenkins是一款开源 CI&CD 软件,用于自动化各种任务,包括构建.测试和部署软件.目前提供超过1000个插件来支持构建.部署.自动化, 满足任何项目的需要. Jenki ...
- 深度探索c++对象模型阅读笔记图
- $Noip2016/Luogu2822$ 组合数问题
$Luogu$ 看这题题解的时候看到一个好可爱的表情(●'◡'●)ノ♥ $Sol$ 首先注意到这题的模数是$k$.然而$k$并不一定是质数,所以不能用$C_n^m=\frac{n!}{m!(n-m)! ...
- 处理样本不平衡的LOSS—Focal Loss
0 前言 Focal Loss是为了处理样本不平衡问题而提出的,经时间验证,在多种任务上,效果还是不错的.在理解Focal Loss前,需要先深刻理一下交叉熵损失,和带权重的交叉熵损失.然后我们从样本 ...
- MicroPython TPYBoard v702实现HTTP应用功能
[Micropython]TPYBoard v702 HTTP应用功能 转载请注明文章来源,更多教程可自助参考docs.tpyboard.com,QQ技术交流群:157816561,公众号:Micro ...
- MySQL 持久化保障机制-redo 日志
我们在 聊一聊 MySQL 中的事务及其实现原理 中提到了 redo 日志,redo 日志是用来保证 MySQL 持久化功能的,需要注意的是 redo 日志是 InnoDB 引擎特有的功能. 为什么 ...