当前位置: 首页 > article >正文

Python 字符串模块

Python字符串模块

它是一个内置模块,我们在使用其常量和类之前必须导入它。

字符串模块常量

让我们看看字符串模块中定义的常量。

import string

# 字符串模块常量
print(string.ascii_letters)
print(string.ascii_lowercase)
print(string.ascii_uppercase)
print(string.digits)
print(string.hexdigits)
print(string.whitespace)  # ' \t\n\r\x0b\x0c'
print(string.punctuation)

输出:

abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ
abcdefghijklmnopqrstuvwxyz
ABCDEFGHIJKLMNOPQRSTUVWXYZ
0123456789
0123456789abcdefABCDEF
 	

!"#$%&'()*+,-./:;?@[\]^_`{|}~

string capwords() 函数

Python字符串模块包含一个实用函数 - capwords(s, sep=None)。此函数使用str.split()将指定的字符串拆分为单词。然后,它使用str.capitalize()函数对每个单词进行大写处理。最后,它使用str.join()连接大写单词。如果未提供可选参数sep或为None,则会删除前导和尾随空格,并使用单个空格分隔单词。如果提供了sep,则使用该分隔符拆分和连接单词。

s = '  Welcome TO  \n\n JournalDev '
print(string.capwords(s))

输出:Welcome To Journaldev

Python字符串模块类

Python字符串模块包含两个类 - Formatter 和 Template。

Formatter

它的行为与str.format()函数完全相同。如果要对其进行子类化并定义自己的格式字符串语法,则此类将非常有用。让我们看一个使用Formatter类的简单示例。

from string import Formatter

formatter = Formatter()
print(formatter.format('{website}', website='JournalDev'))
print(formatter.format('{} {website}', 'Welcome to', website='JournalDev'))

# format()的行为类似
print('{} {website}'.format('Welcome to', website='JournalDev'))

输出:

Welcome to JournalDev
Welcome to JournalDev

Template

此类用于创建字符串模板,以便进行更简单的字符串替换,如PEP 292中所述。在实现国际化(i18n)的应用程序中,它对于不需要复杂格式规则的情况非常有用。

from string import Template

t = Template('$name is the $title of $company')
s = t.substitute(name='Pankaj', title='Founder', company='JournalDev.')
print(s)

输出:Pankaj is the Founder of JournalDev.


http://www.kler.cn/a/233390.html

相关文章:

  • 继承和多态(上)
  • 使用 Visual Studio Installer 彻底卸载 Visual Studio方法与下载
  • 深度学习代码笔记
  • springboot 之 整合springdoc2.6 (swagger 3)
  • 带你掌握springboot集成SpringSecurity安全框架
  • 去地面算法——depth_clustering算法调试(1)
  • “OLED屏幕,色彩绚丽,画面清晰,让每一帧都生动无比。“#IIC协议【下】
  • JavaWeb02-MyBatis
  • QCoro: Qt C++ 20 协程库介绍
  • 基于图像掩膜和深度学习的花生豆分拣(附源码)
  • 【OpenVINO™】在 MacOS 上使用 OpenVINO™ C# API 部署 Yolov5 (上篇)
  • uni-app x,一个纯原生的Android App开发工具
  • 【力扣】复写零,栈 + 双指针法
  • 张楠辞任抖音集团CEO;东方甄选将开服饰号;小红书新增“附近”一级入口;华为分红770亿元
  • Vue3中路由配置Catch all routes (“*“) must .....问题
  • 通过Harbor构建docker私服仓库
  • 前端使用pdf.js进行pdf文件预览的第二种方式:Viewer.html
  • Quartus工程的qsf配置约束文件介绍
  • 【C语言】一道相当有难度的指针某大厂笔试真题(超详解)
  • 106. 从中序与后序遍历序列构造二叉树 - 力扣(LeetCode)
  • RTE2023第九届实时互联网大会:揭秘未来互联网趋势,PPT分享引领行业新思考
  • Python基础篇_修饰符(Decorators)【下】
  • 常用的正则表达式
  • 一条 SQL 查询语句是如何执行的
  • 探索Spring Validation:优雅实现后端数据验证的艺术
  • 数据结构-->线性表-->单链表