【自然语言处理】NLP入门(五):1、正则表达式与Python中的实现(5):字符串常用方法:对齐方式、大小写转换详解

文章目录

  • 一、前言
  • 二、正则表达式与Python中的实现
    • 1.字符串构造
    • 2. 字符串截取
    • 3. 字符串格式化输出
    • 4.字符转义符
    • 5. 字符串常用函数
      • 函数与方法之比较
    • 6. 字符串常用方法
      • 1. 对齐方式
        • center()
        • ljust()
        • rjust()
      • 2. 大小写转换
        • lower()
        • upper()
        • capitalize()
        • title()
        • swapcase()

一、前言

  本文将介绍字符串常用方法,包括: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)都是可调用的对象,但它们之间有一些区别:

  1. 函数(Function)
    • 函数是一段可重复使用的代码块,它可以接受输入参数,并且在执行完任务后返回一个结果。
    • 函数可以独立存在,不依赖于任何对象或类。
    • 在Python中,函数可以通过def关键字定义,并可以在任何地方调用。
def greet(name):return f"Hello, {name}!"print(greet("Alice"))  # Output: Hello, Alice!
  1. 方法(Method)
    • 方法是与特定对象相关联的函数。它是在类定义中定义的函数,它可以访问对象的数据。
    • 方法需要通过对象来调用,并且在方法内部可以使用self关键字来访问对象的属性和其他方法。
    • 在Python中,方法是通过将函数绑定到类的属性来创建的,并且可以通过类的实例来调用。
class Dog:def __init__(self, name):self.name = namedef 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])
  • 说明:

    • width: 指定字符串的宽度
    • fillchar: 填充字符,默认为空格
  • 功能:

    • 返回一个指定宽度的新字符串,原字符串在其中处于居中/左对齐/右对齐的位置。如果宽度大于原字符串长度,则使用 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#$'

在这里插入图片描述

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/273455.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

深入浅出计算机网络 day.1 概论② 因特网概述

当你回头看的时候,你会发现自己走了一段,自己都没想到的路 —— 24.3.9 内容概述 01.网络、互连(联)网与因特网的区别与联系 02.因特网简介 一、网络、互连(联)网与因特网的区别与联系 1.若干节点和链路互连…

[Java安全入门]三.URLDNS链

一.前言 在初步学习java的序列化和反序列化之后,这里学习java反序列化漏洞的一个利用链,也是比较基础的一条链。 由于URLDNS不需要依赖第三方的包,同时不限制jdk的版本,所以通常用于检测反序列化的点。 二.代码展开分析 构造链 …

STM32day2

1.思维导图 个人暂时的学后感,不一定对,没什么东西,为做项目奔波中。。。1.使用ADC采样光敏电阻数值,如何根据这个数值调节LED灯亮度。 while (1){/* USER CODE END WHILE *//* USER CODE BEGIN 3 */adc_val HAL_ADC_GetValue(&a…

微信小程序(五十三)修改用户头像与昵称

注释很详细,直接上代码 上一篇 新增内容: 1.外界面个人资料基本模块 2.资料修改界面同步问题实现(细节挺多,考虑了后期转服务器端的方便之处) 源码: app.json {"window": {},"usingCompone…

从零搭建React18.2+ReactRoute6.22+TS5+RTK2.2搭配antd5+antd-style书写All in Js完整体验项目规范

1. 使用CRA创建项目 全局设置npm淘宝镜像源 npm config set registry https://registry.npmmirror.com -g使用最新版create-react-app初始化项目结构 npx create-react-app custom-template --template typescript初始化项目之后在package.json文件中配置使用node>18.0.0…

【linux】02 :Linux基础命令

1.掌握linux系统的目录结构 linux只有一个顶级目录,称之为:根目录。 windows系统有多个顶级目录,即各个盘符。 2.linux路径的描述方式 /在Linux中的表示:出现在开头表示根目录,出现在后面表示层级关系。 3.什么是命…

【数据库系统概论】第2章:关系数据库

文章目录 0. 前言2.1 关系数据结构及形式化定义2.1.1关系2.1.2 关系模式 2.2 关系操作2.3 关系的完整性2.4 关系代数 0. 前言 关系数据库系统是支持关系模型的数据库系统。第一章初步介绍了关系模型及其基本术语。本章将深入介绍关系模型。 按照数据模型的三个要素,…

考研经验|如何从考研失败中走出来?

对我来说,太丢人了 其实我在本科的时候在同学眼中,一直很优秀,每年奖学金必有我的,国家励志奖学金,国家奖学金,这种非常难拿的奖学金,我也拿过,本科期间学校有一个公费去新西兰留学的…

TimescaleDB 开源时序数据库

文章目录 1.TimescaleDB介绍2.Hypertable 和 chunk3.Hypertable4.Hypertable操作 开源中间件 # TimescaleDBhttps://iothub.org.cn/docs/middleware/ https://iothub.org.cn/docs/middleware/timescale/timescale-summary/1.TimescaleDB介绍 TimescaleDB是基于PostgreSQL数据…

denied: requested access to the resource is denied报错解决

Docker 镜像在文件中包含一组指令,可在 Docker 容器中执行代码。大多数情况下,在创建 docker 镜像之后,当尝试将镜像推送到远程仓库时,会发生这种类型的报错“Docker denied: requested access to the resource is denied” 由于错…

图论练习6

[NOIP2013]车站分级 Here 解题思路 由于起始点之间所选的站号,相互之间一定满足那么对于起始点间未选择的站号,一定满足选择的站号考虑用边来维护信息,表示的级别大于按题意,则车站会被分为几个联通块,且保证块内无环…

vue3+elementPlus:el-table-column表格列动态设置单元格颜色

:cell-style属性 //html<el-tableempty-text"暂无数据":data"datalist.table":max-height"height"row-key"id"border:cell-style"cellStyle"> <el-table>//js //动态设置单元格颜色 const cellStyle ({ row, c…

风车IM即时通讯系统APP源码DJ2403版完整苹果安卓教程

关于风车IM&#xff0c;你在互联网上能随便下载到了基本都是残缺品&#xff0c; 经过我们不懈努力最终提供性价比最高&#xff0c;最完美的版本&#xff0c; 懂货的朋友可以直接下载该版本使用&#xff0c;经过严格测试&#xff0c;该版本基本完美无缺。 1.宝塔环境如下: Ngin…

网络协议常见问题

网络协议常见问题 OSI&#xff08;Open Systems Interconnection&#xff09;模型OSI 封装 TCP/IP协议栈IP数据报的报头TCP头格式UDP头格式TCP (3-way shake)三次握手建立连接&#xff1a;为什么三次握手才可以初始化 Socket、序列号和窗口大小并建立 TCP 连接。每次建立TCP连接…

PyCharm无代码提示解决

PyCharm无代码提示解决方法 在使用PyCharm工具时&#xff0c;调用方法却无法进行提示&#xff0c;针对PyCharm无代码提示整理下解决方案 1、Python内置语法无智能提示 复现&#xff1a;我这里以urllib库读取网页内容为例&#xff0c;在通过urlopen(&#xff09;之后调用getur…

linux系统adb调试工具

adb的全称为Android Debug Bridge&#xff0c;就是起到调试桥的作用。通过adb可以在Eclipse中通过DDMS来调试Android程序&#xff0c;说白了就是调试工具。 adb的工作方式比较特殊&#xff0c;采用监听Socket TCP 5554等端口的方式让IDE和Qemu通讯&#xff0c;默认情况下adb会…

生活的色彩--爱摸鱼的美工(17)

题记 生活不如意事十之八九&#xff0c; 恶人成佛只需放下屠刀&#xff0c;善人想要成佛却要经理九九八十一难。而且历经磨难成佛的几率也很小&#xff0c;因为名额有限。 天地不仁以万物为刍狗&#xff01; 小美工记录生活&#xff0c;记录绘画演变过程的一天。 厨房 食…

基于uniapp cli项目开发的老项目,运行报错path.replace is not a function

项目&#xff1a;基于uniapp cli的微信小程序老项目 问题&#xff1a;git拉取代码&#xff0c;npm安装包时就报错&#xff1b; cnpm能安装成功包&#xff0c;运行报错 三种方法尝试解决&#xff1a; 更改代码&#xff0c;typeof pathstring的话&#xff0c;才走path.replace…

C++第一弹---C++入门(上)

✨个人主页&#xff1a; 熬夜学编程的小林 &#x1f497;系列专栏&#xff1a; 【C语言详解】 【数据结构详解】 【C详解】 C入门 1、C关键字(C98) 2、命名空间 2.1、命名空间定义 2.2、命名空间使用 3、C输入&输出 4、缺省参数 4.1、缺省参数概念 4.2、缺省参…

laravel-admin 头部添加操作

新建html 样式及js namespace App\Admin\Extensions\Nav;class Links {public function __toString(){return <<<HTML<li><a href"" οnclick"js_method();return false;"><i class"fa fa-floppy-o"></i><s…