⼀.python基本数据类型
1. int ==> 整数. 主要⽤来进⾏数学运算
2. str ==> 字符串, 可以保存少量数据并进⾏相应的操作
3. bool==>判断真假, True, False
4. list==> 存储⼤量数据.⽤[ ]表⽰
5. tuple=> 元组, 不可以发⽣改变 ⽤( )表⽰
6. dict==> 字典, 保存键值对, ⼀样可以保存⼤量数据
7. set==> 集合, 保存⼤量数据. 不可以重复. 其实就是不保存value的dict
整数(int)
在python3中所有的整数都是int类型. 但在python2中如果数据量比较⼤. 会使⽤long类型.
在python3中不存在long类型
整数可以进⾏的操作:
bit_length(). 计算整数在内存中占⽤的⼆进制码的⻓度
s1 = 15
print(s1.bit_length())
布尔值(bool)
取值只有True, False. bool值没有操作.
转换问题:
str => int int(str)
int => str str(int)
int => bool bool(int). 0是False 非0是True
bool=>int int(bool) True是1, False是0
str => bool bool(str) 空字符串是False, 不空是True
bool => str str(bool) 把bool值转换成相应的"值"
字符串(str)
把字符连成串. 在python中⽤', ", ''', """引起来的内容被称为字符串
1.1 字符串操作(切片,索引)
索引. 索引就是下标. 切记, 下标从0开始
s2 = "python is good code" print(s2[2]) print(s2[-1]) #代表倒数第一个
1.2 切片,可以使用下标来截取部分字符串的内容
语法:str[start:end]
规则: 顾头不顾尾,从start开始截取,截取到end位置,但不包括end。
s3 = "python is good code" print(s3[0:3]) #截取一段 print(s3[0:]) #从头到尾 print(s3[:]) #原样输出 print(s3[-1:-5]) # 从-1 获取到 -5 这样是获取不到任何结果的从-1向右数. 你怎么数也数不到-5 print(s3[-5:-1]) #取到数据了
print(s3[:-1]) #取到倒数第二个
跳着截取(步长)
# 跳着取, 步⻓ print(s2[1:5:2]) # 从第⼀个开始取, 取到第5个,每2个取1个, 结果: yh, 分析: 1:5=> ytho => yh print(s2[:5:2]) # 从头开始到第五个. 每两个取⼀个 print(s2[4::2]) # 从4开始取到最后. 每两个取⼀个 print(s2[-5::2]) # 从-5取到最后.每两个取⼀个 print(s2[-1:-5]) # -1:-5什么都没有. 因为是从左往右获取的. print(s2[-1:-5:-1]) # 步⻓是-1. 这时就从右往左取值了 print(s2[-5::-3]) # 从倒数第5个开始. 到最开始. 每3个取⼀个, 结果oy
步⻓: 如果是整数, 则从左往右取. 如果是负数. 则从右往左取. 默认是1
切片语法:
str[start:end:step]
start: 起始位置
end: 结束位置
step:步⻓
1.3 字符串的相关操作
切记, 字符串是不可变的对象, 所以任何操作对原字符串是不会有任何影响的
s1 = "pYtUon" print(s1.capitalize()) #首字母大写 print(s1.lower()) #全部字母小写 print(s1.upper()) #全部字母大写 print(s1.swapcase()) #大小写转换 print(s1.casefold()) #和lower得功能是一样得,不过casefold 对所有字母都有效,譬如一些东欧的字母
s2= "*python_is_good_code "
print(s2.title()) # 特殊字符后等候字母大写
切来切去
s5 = "周杰伦"
print(s5.center(11,"*")) #拉长成11个占位,吧周杰伦放居中,其余用*补全 居中
s3 = " _alxe_is haha "
print(s3.strip()) #去空格两边得 l 是左 r 是右
# 字符串替换
s8 = "sylar_alex_taibai_wusir_eggon"
ret = s8.replace('alex', '⾦⻆⼤王') # 把alex替换成⾦⻆⼤王
ret = s8.replace('i', 'SB', 2) # 把i替换成SB, 替换2个