一:运算符(共八种)
1.算术元运算符
+
-
*
/
% -->取余
** -->幂次,且优先级最高
// -->返回商的整数部分
![](https://img.haomeiwen.com/i14555712/0d63f73393427326.png)
divmod(a,b)函数可满足同时做商取整和取余的需要
2.比较运算符
== 一个等于为赋值,两个等于为比较
!= 不等于
<> 不等于
>
<
>=
<=
eg:1.下面选项哪个为True?
'abc' < 'xyz' 字符串比较转为阿斯柯马值比较
(3, 2) < ('a', 'b')
![](https://img.haomeiwen.com/i14555712/bccd2c2ce9d56725.png)
eg:下面选项的值
3>2>1 --->3>2 and 2>1
True
(3>2)>1 --->(3>2)--->True>1--->
False
此处注意True==1,False==0,所以1!>1
注:有括号先比较括号里面的
3.赋值运算符
=
+=
c+=a--->c=c+a
-=
c-=a--->c=c-a
*=
c=a--->c=ca
/=
c/=a--->c=c/a
%=
c%=a--->c=c%a
**=
c=a--->c=ca
//=
c//=a--->c=c//a
注:Python没有c++这种表达方式
4.位运算符
a = 0011 1100
b = 0000 1101
a&b = 0000 1100
a|b = 0011 1101
a^b = 0011 0001
~a = 1100 0011
具体参考老师笔记
5.逻辑运算符
and ->布尔与
只有所有都为True,and运算的结果才是True
or ->布尔或
只要其中有一个为True,or运算结果就是True
not ->布尔非
它是单目运算符,把True变成False,False变成True
![](https://img.haomeiwen.com/i14555712/94615a8bdd4ffc85.png)
a and b返回的是20,not 20-->False 因为只要不是0就是True
6.成员运算符
a in b
a not in b
主要通过例子展示
![](https://img.haomeiwen.com/i14555712/a1708ca4ef18c508.png)
7.身份运算符(有疑问)
is -->出于同一个对象
not is
注:不要与==混淆
![](https://img.haomeiwen.com/i14555712/241b4e4785021cba.png)
8.三目(不常用,参考老师笔记)
二:数字类型
1.整数
通常被称为整型,数值为正或者负,不带小数点。
小整数对象池(-5到256)
id()函数-->查看数字在内存中的占位
具有连续性,间隔为32位
![](https://img.haomeiwen.com/i14555712/d5313a553136d056.png)
小整数有一个缓冲区,不会立马删除,而是等待下一次调用
缓冲区此处有疑问
2.浮点数
3.复数
4.数字类型转换
![](https://img.haomeiwen.com/i14555712/121dfdb18e11b83e.png)
5.数学计算
首先在Python中导入math包
import math
abs()
max()
min()
math.ceil()
math.floor()
![](https://img.haomeiwen.com/i14555712/a91fc3ddfdad6862.png)
注:ceil 为向上取整,floor是向下取整,与四舍五入无关
其他函数参考老师笔记
三:布尔类型
True与False
注1:3 is "3" 为什么是False呢?一个是整数一个是字符串。is是运算符比较的是对象,当然是错误的。
![](https://img.haomeiwen.com/i14555712/5d122c70b501ab48.png)
注2:0、0.0、-0.0、空字符串、空列表、空元组、空字典,这些都被判定为False。而-1、"False"也被判断为True。
注3:运算的时候,明显把True看做1,False看做0。
注4:None不能理解为0,因为0是整数类型,而None是一个特殊的值。None也不是布尔类型,而是NoneType。
四:字符串型
1.字符串在内存中的存储方式
![](https://img.haomeiwen.com/i14555712/d984c089687ba608.png)
整型在内存中占一个字节,字符串不管中间有多少内容都要单独存储
所以在后续的切片当中雷同列表
2.字符串类型的转换
![](https://img.haomeiwen.com/i14555712/0427effd0d5fd99c.png)
这样不会改变原本变量的数据类型,若想改变,则要将其赋值给另一个变量
num = int (num)
num
3.字符串的输入(input)、输出(print)
![](https://img.haomeiwen.com/i14555712/0be21819cab17ba3.png)
4.组成字符串的2种方式
![](https://img.haomeiwen.com/i14555712/80dd5a8ddc7af33a.png)
注:列表当中extend函数和+可将两个列表组成同一个列表
5.字符串中的下标
字符串的存储方式是一个个的存储,所以要取出一个个的时候与列表雷同,都是用下标(从0开始)且注意取最后一位是长度减1
![](https://img.haomeiwen.com/i14555712/1d03422c0db1734d.png)
6.字符串中的切片
![](https://img.haomeiwen.com/i14555712/79e2a37542c1fb35.png)
![](https://img.haomeiwen.com/i14555712/fa15e47b6177bac1.png)
解析:
a[0:4]-->取的时候按下标取,且从0取到下标为4的前一个数
a[2:-1]-->下标为-1时为H,但不取到H,所以是从C-G
三个参数:[起始位置:终止位置:步长]
步长的大小绝对取的跨度,步长的正负决定取的方向
a[0::2]-->终止位置不写则默认取到最后一个H,步长为2则意味着是隔一个取一个,默认步长为1
a[::-1]-->前两个位置不写都默认为从开始到最后,步长的正负控制方向,所以-1则逆序输出
7.字符串常见操作
1.find与index--->找到匹配到的子字符串的第一个字母在母字符串的下标位置
![](https://img.haomeiwen.com/i14555712/63598421d7613565.png)
a.find('tzpy')返回的是第一个出现tzpy的第一个字母t的下标
a.rfind('tzpy')则返回的是出现的最后一个tzpy的第一个字母t的下标
find与index的唯一区别:
a.find()没找到返回-1
a.index()不存在则报错
2.count 字符串出现的次数
![](https://img.haomeiwen.com/i14555712/703752d41b6fd33a.png)
3.replace('a','b','1')把a改成b且只改一个,第三个参数默认则会全部替换
![](https://img.haomeiwen.com/i14555712/c07f10329008fea3.png)
4.split() 切割
![](https://img.haomeiwen.com/i14555712/99ae0df0f02c95fc.png)
比如说用ya切割,则ya都会消失
5.strip 去空格(只会去掉字符前的空格)
用于登录页面
![](https://img.haomeiwen.com/i14555712/f0b082286a163564.png)
6.大小写
capitalize() 首字母大写
title() 每个单词首字母大写
lower() 把字符串所有大写转为小写
upper()把字符串所有小写转为大写
![](https://img.haomeiwen.com/i14555712/d0b00d2c3aa1781d.png)
7.startswith() 判断是否以那个单词开始
endswith() 判断是否以那个单词结束
![](https://img.haomeiwen.com/i14555712/731e00ac855844e3.png)
可以用于判断文件类型
8.判断数字或字母
isalpha 判断是否全是字母
isdigit 判断是否全是数字
num.isalnum() 如果 string 至少有一个字符并且所有字符都是字母或数字
isinstance(l,(str,int))用于判断l是不是字符串或整数
一般都用于判断中
9.字符串format()格式化方法
前面说过%百分符格式化方法。Python官方最近逐步在推广str.format()方法的格式化。
tpl = "i am {}, age {}, {}".format("seven", 18, 'alex')
tpl = "i am {0}, age {1}, {2}".format("seven", 18, 'alex')
tpl = "i am {0}, age {1}, {0}".format("seven", 18)
网友评论