基本数据类型扩展,及字符串的操做(切片,记忆希望字符串的基本操作)
Posted gyc-gxm
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了基本数据类型扩展,及字符串的操做(切片,记忆希望字符串的基本操作)相关的知识,希望对你有一定的参考价值。
?.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个
以上是关于基本数据类型扩展,及字符串的操做(切片,记忆希望字符串的基本操作)的主要内容,如果未能解决你的问题,请参考以下文章