1.变量的认识
-
变量:存放数据值的容器。
-
各个数据类型的结构
-
num
num_1 = 1
-
str
str_1 = 'python编程我来了'
-
list:
list_1 = ['python', '编', '程', '我', '来', '了']
-
tuple
tuple_1 = ('python', '编', '程', '我', '来', '了')
-
dict
dict_1 = {'python':1, '编':2, '程':3, '我':4, '来':5, '了':6}
-
set
set_1 = {'python', '编', '程', '我', '来', '了'}
-
-
数据类型转换
函数 功能 int() 把对象转化为一个整数 float() 把对象转化为一个浮点数 str() 把对象转化为字符串 list() 把序列转化为一个列表 tuple() 把序列转化为元组 dict() 把元组序列转化为字典 -
数据类型检测
#type() print(type())
2.数值
-
int:通常被称为是整型或整数,是正或负整数,不带小数点
-
float:浮点型由整数部分与小数部分组成,浮点型也可以使用科学计数法表示(2.5e2 = 2.5 x 10**2 = 250)
-
bool:True/False,1/0
-
complex:复数由实数和虚数部分构成,a+bi或者complex(a,b)表示。
-
数值格式化输出
#整数格式化输出 print('%o' % 50) #八进制输出,输出为62 print('%d' % 50) #十进制输出,输出为50 print('%x' % 50) #十六进制输出,输出为32 #浮点数格式化输出 print('%f' % 1.11) # 默认保留6位小数1.110000 print('%.1f' % 1.11) # 取1位小数1.1 print('%e' % 1.11) # 默认6位小数,用科学计数法1.110000e+00 print('%.3e' % 1.11) # 取3位小数,用科学计数法1.110e+00 print('%g' % 1111.1111) # 默认6位有效数字1111.11 print('%.7g' % 1111.1111) # 取7位有效数字1111.111 print('%.2g' % 1111.1111) # 取2位有效数字,自动转换为科学计数法1.1e+03
3.字符串
-
format格式化
f = 'f' str_1 = 'abcde{}g'.format(f) print(str_1) print(f'{f}') #第二种用法
-
单双引号的区别:单双引号没有区别,但是在嵌套格式化时会有区别使用
a = "123" b = '"123"' print(a) print(b) print(len(a)) print(len(b))
-
字符串常用函数
函数名 功能 示例 replace() 替换字符,如果替换后的字符是空字符就删除 s = 'hello world’
s.replace(‘world’,‘python’)strip() 两端去空白,能去除’\n’,’’\t,’ '(空格) s = '\n\t python \t\n’
s.strip()split() 指定字符串切割() s = 'baigei’
s.split(‘g’)join() 指定字符串拼接字符串 li = [‘bai’,‘gei’]
‘-’.join(li)lower str中所有大写字母转化为小写 str_1.lower() upper str中所有小写字母转化为大写 str_1.upper() len 统计str的长度 len(str) -
查找与统计
函数名 功能 示例 find() 检测一个str是否在另一个mystr中,在则返回索引,不在则返回-1 mystr.find(str,start = 0,end = len(mystr)) index() 同上,不在时报异常 mystr.index(str,start = 0,end = len(mystr)) rfind() 类似于find(),不过是从右边开始查找 mystr.count(str,start=0,end = len(mystr)) rindex() 类似于index(),不过是从右边开始查找 mystr.rindex(str_1,start = 0,end = len(mystr)) count() 返回str在指定索引之间出现的次数 mystr.count(str_1,start=0,end = len(mystr)) -
判断
函数名 功能 示例 isalpha() 字符串全为字母返回True,否则返回False mystr.isalpha() isdigit() 字符串只包含数字返回True,否则返回False mystr.isdigit() isalnum() 字符串所有字符都是字母或数字返回True,否则返回False mystr.isalnum() isspace() 字符串只包含空格返回True,否则返回False mystr.isspace() startswith() 字符串是否以参数开头,是返回True,否则返回False mystr.startswith(参数) endswith() 字符串是否以参数结尾,是返回True,否则返回False mystr.endswith参数)
4.索引和切片
- 索引(下标)就是编号,就像超市中的存储柜编号,通过编号就能够找到相对应的存储空间
- 切片:切片是指对操作对象截取其中的一部分,字符串、列表元组都支持切片操作。(切片属于半开半闭集合,即左包又不包,左边的下标包括在内,而右边的下标只能取到该下标的前一个数据)
num_1 = 1234567890
print(num_1[2:4]) #索引不能被使用(订阅),不支持索引的对象使用索引
str_1 = '1234567890'
print(str_1[3]) #输出为4,切取单个
print(str_1[3:5]) #输出为45,切取多个,只取出第三个到第五个但第五个不包括在内
print(str_1[:]) #切取完整,从左往右
print(str_1[::]) #切取完整,从左往右
print(str_1[::-1]) #输出为0987654321,从右往左
print(str_1[::2]) #输出为13579,步长为二,取奇数
print(str_1[1::2]) #输出为24680,步长为二,取偶数
4.运算符
python支持以下几种运算符
- 算术运算符
下面以a=10 ,b=20为例进行计算
运算符 | 描述 | 实例 |
---|---|---|
+ | 加 | 两个对象相加 a + b 输出结果 30 |
- | 减 | 得到负数或是一个数减去另一个数 a - b 输出结果 -10 |
* | 乘 | 两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200 |
/ | 除 | x除以y b / a 输出结果 2 |
// | 向下取整 | 返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0 |
% | 取模(余) | 返回除法的余数 b % a 输出结果 0 |
** | 幂 | 返回x的y次幂 a**b 为10的20次方, 输出结果 100000000000000000000 |
- 身份运算符
运算符 | 描述 | 详解 |
---|---|---|
is | 同一性运算符 | 变量ID是否相同,ID即变量的唯一标识,变量值可能相同但ID不一定相同 |
is not | 非同一性 | 判断两个变量的引用是否来之不同对象 |
- 成员运算符
运算符 | 描述 |
---|---|
in | 如果在指定序列中找到值就返回True,否则返回False |
not in | 如果在指定序列中没有找到值就返回True,否则返回False |
- 增量赋运算符
运算符 | 实例 |
---|---|
+= | c += a 等效于 c = c + a |
-= | c -= a 等效于 c = c - a |
*= | c *= a 等效于 c = c * a |
/= | c /= a 等效于 c = c / a |
%= | c %= a 等效于 c = c % a |
**= | c ** = a 等效于 c = c ** a |
//= | c //= a 等效于 c = c // a |
- 比较运算符
运算符 | 描述 |
---|---|
== | 比较两个对象的值是否相同,这里要与is区别出来,==是不识别ID的 |
!= | 比较两个对象值是否不相等 |
> | 大于 |
< | 小于 |
>= | 大于等于 |
<= | 小于等于 |
- 逻辑运算符
运算符 | 逻辑表达式 | 描述 |
---|---|---|
and | x and y | 同时满足x和y两个条件返回True,否则返回False |
or | x or y | 只需要满足x或y中的任意一个条件就返回True,两个都不满足时返回False |
not | not x | 满足条件x时返回False,不满足条件x时返回True |
- 运算符优先级(按照一下排列顺序)
- **
- *,/,%,//
- +,-
- <=,<,>,>=
- ==,!=
- +=,-=,*=,/=,//=,%=,**=
- is,is not
- in,in not
- and,or,not