1.1数值类型
1.常用运算符:
+ - * / %(取余) //(取整数) **(次方)
2.整数与小数的运算 返回float
3.decimal的运算 更精确一些
4.布尔型的计算 True False
5.复数演示
6.了解math模块 import math
7.Decimal
from decimal import Decimal
Decimal(10)/Decimal(3)
Decimal(‘10.5‘)/Decimal(3)
print(type())
?
1.2序列类型(列表,元组)
1.2.1列表list (可以被更改) 可嵌套
?
a=[ 1,2,3,4,5,6,7,8,9,20.0,30.0,(100,200,300),[400,500,600]]
print(a[2])
print(a[2:3]) #取左不取右 右边不写则是取到最右边
print(a[0:20:2])
print(a[-1])
########### 切片取出的是列表
print(a[2:3][0]) 取出的是字符串
###########
b1=‘20180910‘
print (‘year=‘,(b1[0:4]))
print (‘month=‘,(b1[4:6]))
print ("day=",(b1[6:]))
?
1.2.2元组tuple (不可以被更改)元组和列表取值是差不多的
a=(100,200,300)
?
b = list(a) 元组转成列表
1.3列表方法
-
增:
append 到最后的位置 insert 插入到某个位置 extend 扩展 两个列表融合到一个列表
-
删:
pop 通过索引删除 remove 通过内容删除 删除出现的第一个 clear 清空整个列表
-
改:
li[0] = ‘ list ‘
-
查:
index 查找内容的索引 出现的第一个 count 查找元素个数
-
其他方法:
copy 浅复制 reverse 列表反转 sort 排序
?
my_list = [‘Tom‘,‘Wang‘,‘du‘]
my_list.append( ‘hahahaha‘)
my_list.insert(1,‘hansha‘)
my_list2=[15,20]
my_list.extend(my_list,my_list2)
my_list.pop(2)
my_list.remove(‘Tom‘)
my_list[1]=‘wangyangyang‘
print(my_list.index(‘du‘))
print(my_list.count(‘du‘))
my_list3=my_list.copy()
my_list.reverse()
my_list.sort()
?
?
1.4元组方法
-
查:
index 查找内容的索引 出现的第一个 count 查找元素个数
-
元组间接变化:
?
tuple_a=(1,2,3,‘ahsd‘,555)
list_a=list(tuple_a)
list_a.append( ‘hahahaha‘)
tuple_a=tuple(list_a)
?
?
1.5字符串方法 (可以索引 可以切片)
-
查
count 计算某元素出现的次数 find 查找内容的索引 出现的第一个 找不到不会报错 index 查找内容的索引 出现的第一个 找不到报错 isdigit 是否只有数字 isalpha 是否只有英文 endswith 是否以。。结尾 startswith 是否以。。开头 islower 是否是小写 isupper 是否是大写
-
改 (生成一个新的字符串)
upper 变成大写 lower 变成小写 strip (lstrip,rstrip) 去除字符串左右两边字符 capitalize title split 根据某个条件分割
-
删
replace 替换
-
增
字符串拼接
?
my_str=‘asdada fjh afjk ahk jfhaf ha h‘
new_str=my_str.strip()
new_str=my_str.split(‘/‘)
new_str=my_str.replace(‘asd‘,‘666‘)
?
?
1.6字符串转义
字符前面加上 \ ,字符就不再表示字符本身的意思,表示ASCII码中 不能显示字符,常见有下:
\n 换行
\t 水平制表符
?
\b 退格
?
\r 回车,当前位置移到本行开头
?
\\ 代表反斜杠 \
?
\’ 代表一个单引号,同样的 “ 等符号也可以这么输出
?
\0 代表一个空字符
?
\a 系统提示音
在python中如果要去掉字符串的转义,只需要在字符串前面加上 r
r‘abc\tabc‘
1.7字符串编码
?
my_str=r‘东西‘
a=my_str.encode(‘utf-8‘) 转成2进制数据
b=a.decode(‘utf-8‘) 2进制转成字符串
?
1.7字符串拼接
1.使用 +
str1 + str2 + str3
2.格式化字符串
‘ %s %s %s ‘ %(str1,str2,str3)
3.使用join
’字符’.join([str1, str2, str3])
4.使用 format
‘ {} {} {} ‘.format(obj1,obj2,obj3)
?
‘ {0} {1} {2} ‘.format(obj1,obj2,obj3)
?
‘ {1} {0} {2} ‘.format(obj1,obj2,obj3)
?
‘ {n0} {n1} {n2} ‘.format(n1=obj1,n0=obj2,n2=obj3)
my_str=‘南北老师hello我是杜育非‘
a=my_str[0:4]
b=my_str[4:9]
c=my_str[9:]
print(b+‘,‘+a+‘,‘+c+‘.‘)
str_1=‘%s,%s,%s,‘%(b,a,c)
print(str_1)
str_2=(‘,‘.join([b,a,c]))+‘.‘
print(str_2)
str_3=‘{},{},{}.‘
print(str_3.format(b,a,c))
?
?
?
1.8字符串格式化
1.8.1 %s %d %f 等等
-
了解:
%d %数字 %f %浮点数 %c %ASCII字符 %o %8进制 %x %16进制 %e %科学计数法
‘ %-6.3f ‘ % 10.3 左对齐 ‘ %+6.3f‘ % 10.3 显示正 ‘ %5s ‘ % ‘ab‘ 格式化长度 可用来对齐
-
掌握:
print(‘%s’ %’123’) 字符串拼接 print(‘%r’ %’123’) 原始话输出
1.8.2 format 了解:
‘{:.2f}‘.format(12.333) 保留小数点后两位
‘{a:.2f}‘.format(a=12.333)
?
‘{:.2%}‘.format(0.333) 百分比格式
?
‘{:x}‘.format(20) 转换成十六进制
?
‘{:o}‘.format(20) 转换成八进制
进制转换的时候用{0:进制}
‘ {a:<10}’.format(a=12.3,b=13.44) 左对齐,长度为10
‘ {a:0<10}‘.format(a=12.3,b=13.44) 数字补x (填充右边, 宽度为4)
‘ {a:0>10}’.format(a=12.3,b=13.44) 右对齐...
‘ {a:0^10}‘.format(a=12.3,b=13.44) 两边对齐...
?
‘{{ hello {0} }}‘.format(‘python’) 转义{和}符号
?
‘ name=‘a du ,data=‘18‘
print(f‘hello,{name},i am {data}‘) ‘
1.9 深浅复制
1.浅复制
?
a=[1,2,3,4]
b=a.copy
a[0]=100
print(a)
print(b)
print(id(a))
print(id(b))
?
?
?
2.深复制
?
import copy
my_list=[1,2,[3,4]]
a=my_list
b=copy.deepcopy(my_list)
my_list[2][0]=100
print(my_list)
print(a)
print(b)
print(id(my_list))
print(id(a))
print(id(b))
?
?
?