展开
拓展 关闭
订阅号推广码
GitHub
视频
公告栏 关闭

对象的方法、格式化字符串、字符编码

  • 字符串的方法
# 字符串中包含了多少个指定字符串
'asdfsdf'.count('a')

# 第一次出现的索引位置
pos1 = str1.find('a')  

# 使用字符串中某个字符作为分割符
pos1 = str1.split('|')  

# 把字符串中换行的位置进行分割
print(salary.splitlines())

# 将列表连接成字符串
'|'.join([
    '小张:79 ',
    ' 小李:88 ',
    ' 小赵:83'
])

# 删除字符串前后空格
'      小  李:88       '.strip() 

# 删除字符串左边的空格
'      小  李:88       '.lstrip() 

# 删除字符串右边的空格
'      小  李:88       '.rstrip() 

# 替换字符串
str1 = str1.replace('我们', '他们')  

# 是否以指定字符开头
str1.startswith('我们') 
 
# 是否以指定字符结尾
str1.endswith('我们')    

# 是否全部是数字
str1.isdigit()

# 字符串倒序
str1 = '字符串的倒序'
reverse = str1[::-1]
  • 列表的方法
# 在列表的后面添加
a.append([7,8])

# 列表指定位置添加
a.insert(0, '你好')

# 从列表的指定索引位置,取出并删除元素
poped = a.pop(3)

# 从列表中删除元素
var1.remove('a')

# 将列表的元素倒过来
var1.reverse()

# 找到列表中元素的索引
idx = var1.index(5)

# 对列表进行排序
students.sort()
  • 格式化字符串
salary = input('请输入薪资:')
# 计算出缴税额,存入变量tax
tax = int(salary) *25/100  
# 转化为字符串,方便下面的字符串拼接
taxStr = str(tax)  
# 计算出税后工资,存入变量aftertax
aftertax = int(salary) *75/100  
# 转化为字符串,方便下面的字符串拼接
aftertaxStr = str(aftertax)  

# 方式1
print('税前薪资是:' + salary + '元, 缴税:' + taxStr + '元, 税后薪资是:' + aftertaxStr + '元')

# 方式2
print('税前薪资:%s元,缴税:%s元,税后薪资:%s元' %(salary,tax,aftertax))

# 占位符的个数和格式化对象的个数应一致
'税前薪资:%s 元' % (salary,)
'税前薪资:%s 元' % salary
  • 指定宽度对齐
# 右对齐,占10个字符长度,长度不够的前面补空格
'税前薪资:%10s 元' % 100000
'税前薪资:%10s 元' % 10000
'税前薪资:%10s 元' % 1000

# 左对齐
'税前薪资:%-10s 元' % 100000
'税前薪资:%-10s 元' % 10000
'税前薪资:%-10s 元' % 1000

# 格式化对象是整数
'税前薪资:%d 元' % 10000

# 格式化对象是浮点数
'税前薪资:%f 元' % 10000.32

# 格式化对象是整数时,位数不够前面补0
'税前薪资:%010d 元' % 100000
'税前薪资:%010d 元' % 10000
'税前薪资:%010d 元' % 1000

# 格式化对象是小数时,位数不够后面补0
'税前薪资:%010f 元' % 1000.4522
'税前薪资:%010f 元' % 1008.6621
'税前薪资:%010f 元' % 1009.3351

# 格式化对象是小数时,只保留2为小数,前面补0
'税前薪资:%010.2f 元' % 1000.4522
'税前薪资:%010.2f 元' % 1008.6621
'税前薪资:%010.2f 元' % 1009.3351
  • 方式3
salary = input('请输入薪资:')
# 计算出缴税额,存入变量tax
tax = int(salary) *25/100  
# 计算出税后工资,存入变量aftertax
aftertax = int(salary) *75/100 

print(f'税前薪资是:{salary}元, 缴税:{tax}元, 税后薪资是:{aftertax}元')
  • 指定宽度
# 指定宽度10,不足的前面加空格
salary = 10000
print(f'{salary:10}') 

# 左右对齐
f"|{'abc':10}|{300:10}|"

# 右左对齐
f"|{'abc':>10}|{300:<10}|"

# 指定宽度8,小数点后保留1位,不足前面补空格
print(f'税前薪资是:{salary:8.1f}元, 缴税:{tax:8.1f}元, 税后薪资是:{aftertax:8.1f}元')

# 指定宽度8,小数点后保留1位,不足前面补0
print(f'税前薪资是:{salary:08}元, 缴税:{tax:08.1f}元, 税后薪资是:{aftertax:08.1f}元')

# 字符串宽度不足时,后面补0
var = '34324'
f'{var:<08}'
# 字符串宽度不足时,前面补0
f'{var:>08}'

# 用 x 表示格式化为16进制,并采用小写格式
f'数字65535的16进制表示为:{65535:x}' 
  • 字符串内容中有花括号时,需要双写进行转义
times1 = 1000
print(f'文章中 {{ 符号 出现了 {times1} 次')
  • 字符串编码
print ('你好'.encode('utf8')) # 输出 b'\xe4\xbd\xa0\xe5\xa5\xbd'
print ('你好'.encode('gbk'))  # 输出 b'\xc4\xe3\xba\xc3'
  • 字符串解码
print(b'\xe4\xbd\xa0\xe5\xa5\xbd'.decode('utf8'))
print(b'\xc4\xe3\xba\xc3'.decode('gbk'))
posted @ 2023-10-04 15:48  DogLeftover  阅读(24)  评论(0)    收藏  举报