python基础(二)关于编码和字符串操作etc

1、编码:

ASCII:最早的编码 有效位7位,最左边的第八位位0
Unicode:目前有两个版本:1)两个字节(16位)表示一个字符,2)四个字节(32位)表示一个字符。
python2与python3 的一些差异:
utf-8:用最少位数表示一个字符,比如说英文只有一个字节表示。
gbk:我国出产的编码,两个字节表示一个字符。

2、字符串

2.1字符串与bool值的转化

非空字符串转化为bool值 位True
空字符串转化为bool值为False
>>> bool('')
False
>>> bool('1')
True
>>> bool(' ')
True
用str()转换比较,逻辑运算时注意先内部运算完在输出
>>> str(1 and 1)
'1'
>>> str(1>2)
'False'

2.2字符串的索引和切片

查找一个字符串中的单个字符索引如下:

str[开始位置:结束位置:步距]
假如默认开始位置小于结束位置,如果结束位置大于开始位置步距一定要小于0否则系统虽然不会出错但是不会输出。
s = 'pythonabcdef'
#
print(s[:]) #打印全部
print(s[len(s)::-1]) #反向打印
print(s[:6]) #打印python
print(s[-1:-6:-2]) #打印fdb
print(s[-5:]) #不报错 也不打印结果

结果:
pythonabcdef
fedcbanohtyp
python
fdb
bcdef


2.3字符串的方法

str.capitalize()将首字母大写,其余都变成小写返回。
>>> s = 'this is a try'
>>> s.capitalize()
'This is a try'

str.upper(),str.lower() 使字符串全部变为大写返回或者全部变为小写返回。
>>> s = 'this IS a Try'
>>> s.upper()
'THIS IS A TRY'
>>> s.lower()
'this is a try'

str.title()使字符变为标题化字符即每个单词首字母大写
>>> s
'this IS a Try'
>>> s.title()
'This Is A Try'

str.count()查找该字符在字符串中出现了几次,没有则返回0

>>> s
'this IS a Try'
>>> s.count('s')
1
>>> s.count('A')
0


str.find()和str.index()两者用法相同,从左往右查找目标字符(字符串)返回其找到的第一个索引,假如没有查找到find返回-1.index直接报错。
>>> s.find('s')
3
>>> s.find('Q')
-1
>>> s.index('s')
3
>>> s.index('D')
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ValueError: substring not found

str.strip()(两边开始查找) , str.lstrip()(从左开始查找),str.rstrip()(从右边开始查找),去除相应字符为填入即去除空格。

s = '      asldfkjafa      '
print(s.strip())

结果:asldfkjafa
s = 'asldfkjafa'
print(s.strip('as'))

结果:ldfkjaf

重点:匹配机制是s[0]去匹配‘salf’假如在其中就去除,知道不在‘salf’中
s = 'asldfkjafa'
print(s.strip('salf'))

结果:dfkj

str.split()去除相应的字符返回列表
s = 'asldfkjafa'
print(s.split('a'))

结果:['', 'sldfkj', 'f', '']
如果第一个就剪切,第一个位空字符









  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值