Python字符串对齐、删除字符串不需要的内容以及格式化打印字符

删除字符串中不需要的内容

1、strip()方法

strip:默认是去掉首尾的空白字符,但是也可以指定其他字符;

lstrip:只去掉左边的;

rstrip:只去掉右边的;

print('+++apple '.strip()) # '+++apple'
print('+++apple '.lstrip('+')) # 'apple '
print(' apple '.rstrip()) # ' apple'

这个只能去除首尾的,如果想去除中间的字符,可以使用倒replace()方法

2、replace()方法

replace:将字符串中所有需要替换的字符替换成指定的内容,如果指定次数count,则替换不会超过count次;原来的字符串不会改变,而是生成一个新的字符串来保存替换后的结果。

word = 'he22222222o'
m = word.replace('2', 'x', 4)
n = word.replace('2', 'x')
print(word) # he22222222o
print(m) # hexxxx2222o
print(n) # hexxxxxxxxo
print(word.replace('2','+-'))# he+-+-+-+-+-+-+-+-o

z = 'hello  world'
print(z.replace(' ',''))# helloworld

字符串对齐

ljust(width,fillchar) :返回一个左对齐的长度为width的字符串,要是字符串长度小于width则在右边用所给填充字符补齐

rjust(width,fillchar) :右对齐,同上

center(width,fillchar):居中,同上

print('hello'.ljust(10, '+'))# hello+++++
print('hello'.rjust(10))# '  hello'
print('hello'.center(10, '='))# ==hello===

format()函数

‘<':左对齐,右补齐

‘>':右对齐,左补齐

‘^':居中,左右补齐

默认也是使用空格补齐,可以在这三个符号前给定字符,作为填充字符

text = 'hihi'
print(format(text, '>20'))# '    hihi'
print(format(text, '+<20'))# 'hihi++++++++++++++++'
print(format(text, '-^20'))# '--------hihi--------'

格式化打印字符

f-string:建议使用

name = '张三'
age = 18
print(f'我叫{name},今年{age}岁')# 我叫张三,今年18岁

: 号后面带填充的字符,只能是一个字符,多了会报错,不指定的话默认是用空格填充;

b、d、o、x 分别是二进制、十进制、八进制、十六进制;

.nf保留n位小数

.n%让小数变为百分数,并保留n位小数

print('{:b}'.format(255))# 11111111
print('{:d}'.format(255))# 255
print('{:o}'.format(255))# 377
print('{:x}'.format(255))# ff
print('{:X}'.format(255))# FF

print('{:.2f}'.format(10))# 10.00
print('{:.0f}'.format(10.11))# 10

print('{:+^20}{:^20}'.format('QAQ','AQA'))# '++++++++QAQ+++++++++  AQA   '
print('{:^>20}{:^<20}'.format('QAQ','AQA'))# '^^^^^^^^^^^^^^^^^QAQAQA^^^^^^^^^^^^^^^^^'
# 这是我们使用较多的一种方法
print('我叫{},我今年{}岁了'.format('张三', 21))# 我叫张三,我今年21岁了

# {数字}会根据数字的顺序进行填入,数字从0开始
print('我叫{1},我今年{0}岁了'.format(21, 'zhangsan'))# 我叫zhangsan,我今年21岁了

# {变量名}
print('我今年{age},我叫{name},我喜欢{sport}'.format(sport='打篮球', name='zhangsan', age=18))
# 我今年18,我叫zhangsan,我喜欢打篮球

# 通过列表索引设置参数
d = ['zhangsan', '18', '湖南', '180']
print('我叫{},我今年{},我来自{},我身高{}'.format(*d))# 我叫zhangsan,我今年18,我来自湖南,我身高180
e = ['hello', 'world']
print("{0[0]} {0[1]}".format(e))# '0'是必须的
# hello world

# 通过字典索引设置参数
# **info对字典进行拆包
# 我觉得应该是变成了('name'='zhangsan','age'= 18,'height'=180,'addr'='湖南')
# 类似于给**kwargs传多个关键字参数一样
info = {'name':'zhangsan','age': 18,'height':180,'addr':'湖南',}
print('大家好我是{name},我今年{age}岁,我来自{addr},我身高{height}'.format(**info))
# 大家好我是zhangsan,我今年18岁,我来自湖南,我身高180

总结

到此这篇关于Python字符串对齐、删除字符串不需要的内容以及格式化打印字符的文章就介绍到这了,更多相关Python字符串对齐、删除及格式化打印内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 解决Python对齐文本字符串问题

    问题 我们需要以某种对齐方式将文本做格式化处理. 解决方案 对于基本的字符串对齐要求,可以使用字符串的ljust().rjust()和center()方法.示例如下: >>> text = 'Hello World' >>> text.ljust(20) 'Hello World ' >>> text.rjust(20) ' Hello World' >>> text.center(20) ' Hello World ' >&g

  • python删除字符串中指定字符的方法

    最近开始学机器学习,学习分析垃圾邮件,其中有一部分是要求去除一段字符中的标点符号,查了一下,网上的大多很复杂例如这样 import re temp = "司法局让我和户 1 5. 8 0. !!?? 客户维护户外" temp = temp.decode("utf8") string = re.sub("[\s+\.\!\/_,$%^*(+\"\']+|[+--!,.?.~@#¥%--&*()]+".decode("ut

  • Python 字符串操作(string替换、删除、截取、复制、连接、比较、查找、包含、大小写转换、分割等)

    去空格及特殊符号 s.strip().lstrip().rstrip(',') Python strip() 方法用于移除字符串头尾指定的字符(默认为空格). 复制字符串 #strcpy(sStr1,sStr2) sStr1 = 'strcpy' sStr2 = sStr1 sStr1 = 'strcpy2' print sStr2 连接字符串 #strcat(sStr1,sStr2) sStr1 = 'strcat' sStr2 = 'append' sStr1 += sStr2 print

  • python 删除字符串中连续多个空格并保留一个的方法

    如下所示: ' '.join(line.split()) 例如:'line dd',运行line.split()得到只有两个元素的列表['line','dd'] 以上这篇python 删除字符串中连续多个空格并保留一个的方法就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们.

  • Python中字符串对齐方法介绍

    目的 实现字符串的左对齐,右对齐,居中对齐. 方法 字符串内置了以下方法:其中width是指包含字符串S在内的宽度,fillchar默认是空格,也可以指定填充字符 复制代码 代码如下: string.ljust(s, width[, fillchar]) string.rjust(s, width[, fillchar]) string.center(s, width[, fillchar]) 复制代码 代码如下: In [6]: a='Hello!' In [7]: print a.ljust

  • Python如何对齐字符串

    问题 你想通过某种对齐方式来格式化字符串 解决方案 对于基本的字符串对齐操作,可以使用字符串的 ljust() , rjust() 和 center() 方法.比如: >>> text = 'Hello World' >>> text.ljust(20) 'Hello World ' >>> text.rjust(20) ' Hello World' >>> text.center(20) ' Hello World ' >&g

  • Python字符串中删除特定字符的方法

    分析 在Python中,字符串是不可变的.所以无法直接删除字符串之间的特定字符. 所以想对字符串中字符进行操作的时候,需要将字符串转变为列表,列表是可变的,这样就可以实现对字符串中特定字符的操作. 1.删除特定字符 特定字符的删除,思路跟插入字符类似. 可以分为两类,删除特定位置的字符 或者 删除指定字符. 1.1.删除特定位置的字符 使用.pop()方法.输入参数,即为要删除的索引. string = '公众号:土堆碎念' list_str = list(string) list_str.po

  • Python 打印中文字符的三种方法

    方法一: 现在用 notepad++,在 UTF-8 格式下编写以下语句: #coding=utf-8 print"打印中文字符" 方法二: 用encode和decode 如: import os.path import xlrd,sys Filename='/home/tom/Desktop/1234.xls' if not os.path.isfile(Filename): raise NameError,"%s is not a valid filename"

  • python使用正则表达式匹配字符串开头并打印示例

    本文实例讲述了python使用正则表达式匹配字符串开头并打印的方法.分享给大家供大家参考,具体如下: import re s="name=z1hangshan username=fff url=www.baidu.com password=ddd256" s2="username=fff name=z1hangshan url=www.baidu.com password=ddd256" #p=re.compile(r'((?:\s)name=(\S)+)') p=

  • python3使用print打印带颜色的字符串代码实例

    一.实现过程 终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关 转义序列是以ESC开头,即用\033来完成(ESC的ASCII码用十进制表示是27,用八进制表示就是033) 书写格式: 开头部分:\033[显示方式;前景色;背景色m + 结尾部分:\033[0m 注意:开头部分的三个参数:显示方式,前景色,背景色是可选参数,可以只写其中的某一个:另外由于表示三个参数不同含义的数值都是唯一的没有重复的,所以三个参数的书写先后顺序没有固定要求,系统都能识别:但是,建议按

随机推荐