Python常见格式化字符串方法小结【百分号与format方法】

下面是Python常见格式化字符串方法小结的完整攻略。

Python常见格式化字符串方法小结【百分号与format方法】

介绍

在Python中,格式化字符串是一个经常用到的功能。Python提供了两种常见的格式化字符串方法,分别是百分号(%)方法和format方法。这两种方法可以让我们方便地将变量、常量等数据组合成字符串,有很广泛的应用场景。本文将对这两种方法进行一些介绍和常见用法的梳理。

百分号方法

语法说明

百分号方法是Python早期版本就支持的字符串格式化方法。它的基本语法是:

"format string % values"

其中,format string是一个包含格式符的字符串,values是按照格式符格式排列的值,可以是一个值或者一个tuple。

格式符

在format string中可以包含几个格式符,分别是:

  • %s 字符串
  • %d 整数
  • %f 浮点数
  • %e 科学计数法

示例1:字符串

name = "Tom"
print("My name is %s" % name)

输出结果:

My name is Tom

示例2:整数

age = 18
print("I am %d years old" % age)

输出结果:

I am 18 years old

示例3:浮点数

weight = 63.5
print("My weight is %.2f kg" % weight)

输出结果:

My weight is 63.50 kg

示例4:科学计数法

distance = 123456.7
print("The distance is %.2e km" % distance)

输出结果:

The distance is 1.23e+05 km

padding功能

在格式化字符串中可以用数字作为格式符之前的符号,表示这个值需要占用的宽度。如果这个值小于指定的宽度,则使用空格或者0补全。如果这个值大于指定的宽度,则按照实际值输出。

示例5:padding功能

n1 = 1234
n2 = 56
print("n1=%8d, n2=%08d" % (n1, n2))

输出结果:

n1=    1234, n2=00000056

格式化符综合示例

下面是对多个变量使用不同的格式化符的综合示例:

name = 'Tom'
age = 18
weight = 63.5
print("%s is %d years old, weight is %.2f kg" % (name, age, weight))

输出结果:

Tom is 18 years old, weight is 63.50 kg

应用场景

百分号方法已经被Python自带的新式字符串str.format()所取代,但是在一些旧代码或者遗留项目中仍然可以看到百分号方法的影子。通常可以用在输出日志、生成固定格式的文件、Web应用等场景中。

format方法

语法说明

format方法是Python2.6及以后版本引入的新式字符串格式化方法。它的基本语法是:

"format string".format(values)

其中,format string是一个包含format格式化的字符串,values是按照format格式指定的值或者变量。

format格式

在format string中可以使用大括号将变量的值嵌入到字符串中。大括号中可以指定格式,格式用冒号隔开,格式的常见符号及其含义:

  • {} 自动推导类型
  • {:d} 整数
  • {:f} 浮点数
  • {:.2f} 保留小数点后两位浮点数
  • {:.2e} 科学计数法保留两位小数

格式化示例

格式化示例可以参照先前的百分号示例。

示例6:自动推导类型

x = 10
y = 'Tom'
print("x={} y={}".format(x, y))

输出结果:

x=10 y=Tom

示例7:整数

n = 1234
print("n={:08d}".format(n))

输出结果:

n=00001234

示例8:浮点数

f = 63.5
print("f={:.2f}".format(f))

输出结果:

f=63.50

padding功能

format可以在格式化指定的位置使用padding功能,方法是在变量前加上冒号加上占位符,占位符的格式是[填充字符][对齐方式][输出宽度]。其中,填充字符默认为空格,对齐方式默认右对齐。

示例9:padding功能

n1 = 1234
n2 = 56
print("n1={:8d}, n2={:08d}".format(n1, n2))

输出结果:

n1=    1234, n2=00000056

应用场景

format方法是比较通用的字符串格式化方法,可以用来格式化字符串、日志、数据库查询等场景,在Python编程中应用较为广泛。

总结

Python的格式化字符串方法有两种,分别是百分号方法和format方法。百分号方法是Python早期的字符串格式化方法,能够满足基本的字符串格式化需求,并且可以直接应用到一些旧代码中。format方法是Python较新的字符串格式化方法,更加灵活、通用,在Python编程中应用较为广泛。

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python常见格式化字符串方法小结【百分号与format方法】 - Python技术站

(0)
上一篇 2023年6月5日
下一篇 2023年6月5日

相关文章

  • 浅谈spring boot 集成 log4j 解决与logback冲突的问题

    下面是“浅谈Spring Boot集成Log4j解决与Logback冲突的问题”的完整攻略。 1. 背景介绍 在使用Spring Boot进行项目开发时,会涉及到日志输出的问题。Spring Boot默认使用Logback作为日志框架,但是有的时候我们会想使用其他日志框架,比如Log4j。然而,由于Logback和Log4j都使用了SLF4J作为他们的日志框…

    python 2023年6月3日
    00
  • Python 格式化输出_String Formatting_控制小数点位数的实例详解

    Python格式化输出_StringFormatting_控制小数点位数的实例详解 在Python中,格式化输出是一种常用的技巧,可以用于将变量或表达式的值以特定的格式输出到控制台或文件中。本文将详细讲解Python格式化输出_StringFormatting_控制小数点位数的实例,包括使用字符串格式化符号、使用format方法、控制小数点位数等内容,并提供…

    python 2023年5月15日
    00
  • Python实现图形用户界面和游戏开发的方法和技巧

    Python实现图形用户界面和游戏开发的方法和技巧 Python是一种流行的编程语言,可用于开发各种应用程序,包括图形用户界面(GUI)和游戏。下面是Python实现GUI和游戏开发的方法和技巧的完整攻略。 1. Python实现GUI的方法和技巧 1.1 使用Tkinter Tkinter是Python自带的GUI库,可以使用它创建GUI应用程序。以下是创…

    python 2023年5月19日
    00
  • 在pycharm中使用matplotlib.pyplot 绘图时报错的解决

    下面是在PyCharm中使用matplotlib绘图时报错的解决攻略: 问题分析 使用 matplotlib 绘图时,可能会遇到 pyplot 报错的情况,例如 TclError: no display name and no $DISPLAY environment variable 错误,这是因为 PyCharm 默认不启用 GUI 模式,无法绘制图形。…

    python 2023年5月13日
    00
  • Python中的Super用法示例详解

    下面我来详细讲解“Python中的Super用法示例详解”的完整攻略。 Python中的Super用法示例详解 1. 什么是Super 在Python中,Super是用于调用父类方法的一个工具。通俗来说,就是用于在子类中调用父类的方法,以实现代码的重用和扩展。具体来说,就是在子类中使用Super来调用父类的方法,而不是直接调用父类的方法。 2. Super用…

    python 2023年5月13日
    00
  • python中wordcloud安装的方法小结

    这里是关于“python中wordcloud安装的方法小结”的完整攻略。 1. 安装wordcloud模块 要在Python中使用wordcloud,需要首先安装wordcloud模块。常用的方法是使用pip命令进行安装: pip install wordcloud 对于在Windows系统中使用Anaconda的Python用户,也可以使用conda命令进…

    python 2023年5月20日
    00
  • python引入requests报错could not be resolved解决方案

    让我们来详细讲解“python引入requests报错couldnotberesolved解决方案”的完整攻略。 问题描述 当我们在Python代码中使用requests库时,有可能会出现could not be resolved的报错信息,这是一种网络连接错误,意味着我们的程序无法连接到指定的URL地址。具体的错误信息可能会因为不同的操作系统或Python…

    python 2023年5月13日
    00
  • python中3种等待元素出现的方法总结

    让我来给您详细讲解“Python中3种等待元素出现的方法总结”的攻略。 1. 等待元素出现的必要性 在使用爬虫、自动化测试或者类似工具时,经常需要等待某个页面元素出现。但是,由于网络状况、服务器响应等原因,元素可能在不同的时间到达DOM。这就导致了在代码执行期间某些页面元素可能还没有出现的情况。如果在这种情况下强行去获取元素,通常会抛出异常,造成任务执行失败…

    python 2023年5月13日
    00
合作推广
合作推广
分享本页
返回顶部