一:运算符(共八种)
1.算术元运算符
+
-
*
/
% -->取余
** -->幂次,且优先级最高
// -->返回商的整数部分

divmod(a,b)函数可满足同时做商取整和取余的需要
2.比较运算符
== 一个等于为赋值,两个等于为比较
!= 不等于
<> 不等于
>
<
>=
<=
eg:1.下面选项哪个为True?
'abc' < 'xyz' 字符串比较转为阿斯柯马值比较
(3, 2) < ('a', 'b')

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

a and b返回的是20,not 20-->False 因为只要不是0就是True
6.成员运算符
a in b
a not in b
主要通过例子展示

7.身份运算符(有疑问)
is -->出于同一个对象
not is
注:不要与==混淆

8.三目(不常用,参考老师笔记)
二:数字类型
1.整数
通常被称为整型,数值为正或者负,不带小数点。
小整数对象池(-5到256)
id()函数-->查看数字在内存中的占位
具有连续性,间隔为32位

小整数有一个缓冲区,不会立马删除,而是等待下一次调用
缓冲区此处有疑问
2.浮点数
3.复数
4.数字类型转换

5.数学计算
首先在Python中导入math包
import math
abs()
max()
min()
math.ceil()
math.floor()

注:ceil 为向上取整,floor是向下取整,与四舍五入无关
其他函数参考老师笔记
三:布尔类型
True与False
注1:3 is "3" 为什么是False呢?一个是整数一个是字符串。is是运算符比较的是对象,当然是错误的。

注2:0、0.0、-0.0、空字符串、空列表、空元组、空字典,这些都被判定为False。而-1、"False"也被判断为True。
注3:运算的时候,明显把True看做1,False看做0。
注4:None不能理解为0,因为0是整数类型,而None是一个特殊的值。None也不是布尔类型,而是NoneType。
四:字符串型
1.字符串在内存中的存储方式

整型在内存中占一个字节,字符串不管中间有多少内容都要单独存储
所以在后续的切片当中雷同列表
2.字符串类型的转换

这样不会改变原本变量的数据类型,若想改变,则要将其赋值给另一个变量
num = int (num)
num
3.字符串的输入(input)、输出(print)

4.组成字符串的2种方式

注:列表当中extend函数和+可将两个列表组成同一个列表
5.字符串中的下标
字符串的存储方式是一个个的存储,所以要取出一个个的时候与列表雷同,都是用下标(从0开始)且注意取最后一位是长度减1

6.字符串中的切片


解析:
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--->找到匹配到的子字符串的第一个字母在母字符串的下标位置

a.find('tzpy')返回的是第一个出现tzpy的第一个字母t的下标
a.rfind('tzpy')则返回的是出现的最后一个tzpy的第一个字母t的下标
find与index的唯一区别:
a.find()没找到返回-1
a.index()不存在则报错
2.count 字符串出现的次数

3.replace('a','b','1')把a改成b且只改一个,第三个参数默认则会全部替换

4.split() 切割

比如说用ya切割,则ya都会消失
5.strip 去空格(只会去掉字符前的空格)
用于登录页面

6.大小写
capitalize() 首字母大写
title() 每个单词首字母大写
lower() 把字符串所有大写转为小写
upper()把字符串所有小写转为大写

7.startswith() 判断是否以那个单词开始
endswith() 判断是否以那个单词结束

可以用于判断文件类型
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)
网友评论