0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

python之字符串格式化的3种方式

冬至配饺子 来源:缪斯之子 作者:肖新苗 2022-08-23 10:08 次阅读

字符串格式化的3种方式

def test_1():

1.格式化的方式

dog = 'dog'
str1 = 'This is a %s' % dog
str2 = 'This is {} {}'.format('a', dog)
str3 = f'This is a {dog}'
assert 'This is a dog' == str1, r'% format error'
assert 'This is a dog' == str2, '{} format error'
assert 'This is a dog' == str3, 'f-string format errorr'
填充零的方式

def test_2():

2.填充零的方式

price = 123

# 其实我就用这一种, 后面的仅供参考

assert '0123' == f'{price:0>4}', 'format 3 error'

assert '0123' == '%04d' % price, ' format 1 error'

assert '0123' == str(price).rjust(4, '0'), 'rjust error'

assert '0123' == str(price).zfill(4), 'zfill error'

assert '0123' == '{:0>4}'.format(str(price)), 'format 2 error'

find和rfind获取字符串索引

def test_4():
# 4 startswith,find
raw = 'hello world $1 $2'
b1 = raw.startswith('hello')
assert b1, 'startswith error'
i1 = raw.find('$')
i2 = raw.rfind('$')
assert 12 == i1, 'find error'
assert 15 == i2, 'rfind error'

replace和正则替换

def test_5():
# 查找并替换
raw = 'hello world hello 1'
str1 = raw.replace('hello', 'good', 1)
assert 'good world hello 1' == str1, 'replace error'

reg = re.compile(r'^hello')
str2 = reg.sub('good', raw)
assert 'good world hello 1' == str2, 'replace error'

reg = re.compile(r'hello')
str3 = reg.sub('good', raw, 1)
assert 'good world hello 1' == str3, 'replace error'

split和rsplit

def test_7():
# split
raw = 'I am from jingzhou'
a1 = raw.split(' ')
assert {'I', 'am', 'from', '', 'jingzhou'} == set(a1), 'split error'
# \s+ 正则表示用1个或者多个空格分割,所以am from之间的两个空格会当做1个分割符去分割
a2 = re.split(r'\s+', raw)
assert {'I', 'am', 'from', 'jingzhou'} == set(a2), 'split re error'

# 取最后一个值
a3 = raw.rsplit(' ', 1)[1]
assert 'jingzhou' == a3, 'rsplit error'

字符串转数字

def test_8():
# 数字 isdecimal 不可以汉字,isdigit 不可以汉字, isnumeric可以汉字
# 我会优先用isdecimal,因为比较干净
raw1 = '123'
raw2 = '五'
assert raw1.isdecimal() == raw1.isdigit(
) == raw1.isnumeric() == True, 'isdecimal error'

assert not raw2.isdecimal(), 'isdecimal error'
assert not raw2.isdigit(), 'isdigit error'
assert raw2.isnumeric(), 'isnumeric error'
isspace和join

def test_9():
# isspace
raw = ' '
assert raw.isspace(), 'isspace error'


def test_10():
# join
raw1 = ['a', 'b', 'c']
assert 'a:b:c' == ':'.join(raw1)



审核编辑:刘清

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • 字符串
    +关注

    关注

    1

    文章

    579

    浏览量

    20549
  • python
    +关注

    关注

    56

    文章

    4797

    浏览量

    84787
收藏 人收藏

    评论

    相关推荐

    base64字符串转换为二进制文件

    Base64是一编码方法,用于将二进制数据转换为ASCII字符串。这种编码通常用于在不支持二进制数据的系统中传输数据,例如电子邮件或网页。将Base64字符串转换为二进制文件的过程相对简单,但需要
    的头像 发表于 11-10 10:55 1281次阅读

    Labview 字符串 不常用功能:快捷才当将字符串设置为反斜杠(\'\\\')代码显示,用于仪器通信

    (ASCIIFF,相当于**\\\\08**) \\\\n 换行(ASCIILF,相当于**\\\\0A**)。格式化写入文件函数自动将此代码转换为独立于平台的行结束字符。 \\\\r 回车
    发表于 09-06 14:01

    MATLAB(5)--字符串处理

    :两个字符串里的每个字符依次按ASCII值大小逐个进行比较,比较的结果是一个数值向量,向量中的元素为1或者0。 字符串比较函数用于判断字符串是否相等,有4
    发表于 09-06 10:22

    labview字符串数组转化为数值数组

    在LabVIEW中,将字符串数组转换为数值数组是一项常见的任务,尤其是在处理数据采集、信号处理或用户输入时。 1. 理解LabVIEW的数据类型 在开始之前,了解LabVIEW中的数据类型是非
    的头像 发表于 09-04 17:47 2499次阅读

    labview字符串如何转换为16进制字符串

    在LabVIEW中,将字符串转换为16进制字符串是一个常见的需求,尤其是在处理数据通信和硬件接口时。LabVIEW提供了多种方法来实现这一转换,包括使用内置函数、编写VI(Virtual
    的头像 发表于 09-04 15:54 2632次阅读

    labview中如何实现字符串换行

    。 使用 Append String 函数 :在字符串末尾添加换行符。 使用 Format Into String 函数 :格式化
    的头像 发表于 09-04 15:47 1788次阅读

    labview中如何实现字符串选择输出

    在LabVIEW中实现字符串选择输出是一项常见的任务,它涉及到字符串处理、条件判断和用户界面设计等多个方面。由于LabVIEW是一图形编程语言,其编程
    的头像 发表于 09-04 15:44 978次阅读

    labview中常用的字符串函数有哪些?

    在LabVIEW中,常用的字符串函数广泛覆盖了对字符串的各种操作,包括但不限于格式化、搜索、替换、连接、计算长度等。以下是一些常用的字符串函数及其简要说明:
    的头像 发表于 09-04 15:43 817次阅读

    labview字符串的四表示各有什么特点

    。在LabVIEW中,字符串是一基本的数据类型,用于表示文本信息。字符串在LabVIEW中有多种表示方式,每种方式都有其特定的应用场景和特
    的头像 发表于 09-04 15:40 609次阅读

    还不会吗?三分钟让你速通Printf~

    。Printf主要做两件事:第一件是将参数字符串以及可变参数进行解析,格式化成一字符串。第二件事就是将格式化
    的头像 发表于 07-27 08:11 321次阅读
    还不会吗?三分钟让你速通Printf~

    鸿蒙TypeScript学习第10天:【String(字符串)】

    String 对象用于处理文本(字符串)。
    的头像 发表于 04-08 14:32 838次阅读
    鸿蒙TypeScript学习第10天:【String(<b class='flag-5'>字符串</b>)】

    STM32的疑难杂症之一:Printf的使用

    。Printf主要做两件事:第一件是将参数字符串以及可变参数进行解析,格式化成一字符串。第二件事就是将格式化
    的头像 发表于 04-02 08:09 3762次阅读
    STM32的疑难杂症之一:Printf的使用

    C语言字符串编译函数介绍

    在C语言中,字符串实际上是使用null字符O'终止的一维字符数组。因此,一个以null结尾的字符串,包含了组成字符串
    的头像 发表于 03-07 16:18 520次阅读
    C语言<b class='flag-5'>字符串</b>编译函数介绍

    output函数怎么用

    ( "Hello, World!" ) 输出变量的值: name = "Alice" print ( "My name is" , name) 输出格式化字符串: age = 25 print ( "I
    的头像 发表于 02-23 14:21 1276次阅读

    批量替换多个文件中特定字符串3方法

    在验证工作中我们经常遇到批量处理某些文件,或者某些文件中关键词的问题,如果单个打开编辑,效率就太低,本文分享3简单易用的批量处理多个文件中特定字符串的方法,希望对大家有所帮助。
    的头像 发表于 01-09 10:36 2268次阅读
    批量替换多个文件中特定<b class='flag-5'>字符串</b>的<b class='flag-5'>3</b><b class='flag-5'>种</b>方法