目录
- 数字
 - 进制转换
 - 小数精度
 - 科学计算库
 
- 字符串
 - 转义符
 - 正向/反向索引
 - 正向/反向切片
 - 成员运算
 - 字符编码
 - 字符串处理
 
- 布尔类型
 - 指示条件
 - 作为掩码
 
- 类型转换
 
数字
进制转换
a=10
b=bin(a)
c=oct(a)
d=hex(a)
print(a,b,c,d)
print(type(a))
print(type(b))
print(type(c))
print(type(d))
 
10 0b1010 0o12 0xa
<class 'int'>
<class 'str'>
<class 'str'>
<class 'str'>
 
e=int(b,2)
f=int(c,8)
g=int(d,16)
print(e,f,g)
 
10 10 10
 
小数精度
-  
计算机采用二进制小数来表示浮点数的小数部分【所以有时候不能精确的表达】

 -  
四舍五入函数round()【位数不足不会补齐,但会自动抹零】

 -  
除法运算的结果默认就是浮点数
 -  
高级运算符:乘方** ,幂次方pow()【可以有第三个参数,就是取余】,绝对值abs()【复数也可以求模长】,==divmod()==返回整数商和模运算的二元元组
 
科学计算库
- math
 - scipy
 - numpy
 
字符串
转义符

正向/反向索引
- 正向索引:从前往后,从 0开始递增
 - 反向索引:从后往前,从 -1开始递减
 
正向/反向切片
- 正向切片
 
a="banana"
s1=a[0:4:1]
s2=a[0:4]
s3=a[0:4:2]
s4=a[-6:]
s5=a[:]
s1,s2,s3,s4,s5
 
('bana', 'bana', 'bn', 'banana', 'banana')
 
- 反向切片
 
a="123456"
a1=a[-1:-6:-1]
a2=a[-2::-1]
a3=a[::-1]# 字符串反转
a1,a2,a3
 
('65432', '54321', '654321')
 
成员运算
'pho' in 'photo'
 
 for a in 'photo':
    print(a)
 
字符编码
ord('a')
 
chr(98)
 
字符串处理
- 分割:split
 
s1="my baby is sleeping"
s2=s1.split(" ")
print(s2)# 返回一个列表
print(s1)# 原字符串不变
 
['my', 'baby', 'is', 'sleeping']
my baby is sleeping
 
- 聚合:join
 
s1="12345"
s2=["1","2","3","4","5"]# 必须是字符才可以
s1="*".join(s1)
s2="&".join(s2)
print(s1)
print(s2)
 
1*2*3*4*5
1&2&3&4&5
 
- 删除:strip
 
s="***123***"
print(s.strip("*"))
print(s.lstrip("*"))
print(s.rstrip("*"))
 
123
123***
***123
 
布尔类型
- any()、all()
 
指示条件
while True:
 
作为掩码
import numpy as np
x=np.array([0,1,2,3,4,5,6])
x[x>3]
 
array([4, 5, 6])
 
















![[NLP] LLM---<训练中文LLama2(二)>扩充LLama2词表构建中文tokenization](https://img-blog.csdnimg.cn/1c4ccf9d0a864e3092f16c7757ee24c9.png)


