一、前言
本文将介绍字符串常用方法,包括:center()、ljust()、rjust();lower()、upper();capitalize()、title()、swapcase()等
二、正则表达式与Python中的实现
1.字符串构造
2. 字符串截取
【自然语言处理】NLP入门(一):1、正则表达式与Python中的实现(1):字符串构造、字符串截取
3. 字符串格式化输出
【自然语言处理】NLP入门(二):1、正则表达式与Python中的实现(2):字符串格式化输出(%、format()、f-string)
4.字符转义符
【自然语言处理】NLP入门(三):1、正则表达式与Python中的实现(3):字符转义符
5. 字符串常用函数
在Python中有很多内置函数可以对字符串进行操作。如len()
、ord()
、chr()
、max()
、min()
、bin()
、oct()
、hex()
等。
自然语言处理】NLP入门(四):1、正则表达式与Python中的实现(4):字符串常用函数
函数与方法之比较
在Python中,函数(function)和方法(method)都是可调用的对象,但它们之间有一些区别:
- 函数(Function)
- 函数是一段可重复使用的代码块,它可以接受输入参数,并且在执行完任务后返回一个结果。
- 函数可以独立存在,不依赖于任何对象或类。
- 在Python中,函数可以通过
def
关键字定义,并可以在任何地方调用。
def greet(name):
return f"Hello, {name}!"
print(greet("Alice")) # Output: Hello, Alice!
- 方法(Method)
- 方法是与特定对象相关联的函数。它是在类定义中定义的函数,它可以访问对象的数据。
- 方法需要通过对象来调用,并且在方法内部可以使用
self
关键字来访问对象的属性和其他方法。 - 在Python中,方法是通过将函数绑定到类的属性来创建的,并且可以通过类的实例来调用。
class Dog:
def __init__(self, name):
self.name = name
def bark(self):
return f"{self.name} says Woof!"
my_dog = Dog("Buddy")
print(my_dog.bark()) # Output: Buddy says Woof!
函数是独立的代码块,而方法是与类或对象相关联的函数。 方法依赖于类和对象的概念,而函数则是更一般的概念,不一定与特定的类或对象相关联。
6. 字符串常用方法
由于字符串属于不可变序列类型,常用方法中涉及到返回字符串的都是新字符串,原有字符串对象不变。
1. 对齐方式
Python提供了三种方法来对字符串进行对齐:center()
, ljust()
和 rjust()
。
- 格式:
- `str.center(width[, fillchar])`
- `str.ljust(width[, fillchar])`
- `str.rjust(width[, fillchar])`说明:
代码语言:txt复制- `width`: 指定字符串的宽度
- `fillchar`: 填充字符,默认为空格功能:
代码语言:txt复制- 返回一个**指定宽度的新字符串,原字符串在其中处于居中/左对齐/右对齐的位置**。如果宽度大于原字符串长度,则使用 `fillchar` 进行填充。
center()
str.center(width[, fillchar])
方法返回一个新字符串,原字符串被置于新字符串的中央,两侧使用fillchar
字符(默认为空格)进行填充,直到达到指定的width
宽度。
# 原字符串长度小于width
print('Python'.center(10)) # ' Python '
print('Python'.center(10, '*')) # '**Python**'
# 原字符串长度等于width
print('Python'.center(6)) # 'Python'
# 原字符串长度大于width
print('Python'.center(4)) # 'Python'
ljust()
str.ljust(width[, fillchar])
方法返回一个新字符串,原字符串位于新字符串的左侧,右侧使用fillchar
字符(默认为空格)进行填充,直到达到指定的width
宽度。
print('Python'.ljust(10)) # 'Python '
print('Python'.ljust(10, '*')) # 'Python****'
rjust()
str.rjust(width[, fillchar])
方法返回一个新字符串,原字符串位于新字符串的右侧,左侧使用fillchar
字符(默认为空格)进行填充,直到达到指定的width
宽度。
print('Python'.rjust(10)) # ' Python'
print('Python'.rjust(10, '*')) # '****Python'
2. 大小写转换
- 常用于解决不区分大小写的问题:
lower()
将字符串中的大写字母转换为小写字母,其他字符不变,并返回新字符串。upper()
将字符串中的小写字母转换为大写字母,其他字符不变,并返回新字符串。
- 进阶
capitalize()
将字符串的首字母转换为大写,其余字母转为小写,返回新字符串。title()
将每个单词的首字母转为大写,其他字母转为小写,返回新字符串。swapcase()
将字符串中的大小写字母互换,返回新字符串。
lower()
str.lower()
方法返回一个新字符串,其中所有字符都被转换为小写。
print('PythON'.lower()) # 'python'
print('PYTHON123@#$'.lower()) # 'python123@#$'
upper()
str.upper()
方法返回一个新字符串,其中所有字符都被转换为大写。
print('PythON'.upper()) # 'PYTHON'
print('python123@#$'.upper()) # 'PYTHON123@#$'
capitalize()
str.capitalize()
方法返回一个新字符串,其中第一个字符被转换为大写,其余字符被转换为小写。
print('python'.capitalize()) # 'Python'
print('PYTHON'.capitalize()) # 'Python'
print('python 123'.capitalize()) # 'Python 123'
title()
str.title()
方法返回一个新字符串,其中每个单词的首字母被转换为大写,其余字母被转换为小写。
print('python is a programming language'.title()) # 'Python Is A Programming Language'
print('ThIs iS A tEsT sTrInG'.title()) # 'This Is A Test String'
swapcase()
str.swapcase()
方法返回一个新字符串,其中所有大写字符被转换为小写,所有小写字符被转换为大写。
print('Python IS AWESOME'.swapcase()) # 'pYTHON is awesome'
print('PyThoN123#$'.swapcase()) # 'pYtHOn123#$'