Python知识点5---字符串的使用

提前说一点:如果你是专注于Python开发,那么本系列知识点只是带你入个门再详细的开发点就要去看其他资料了,而如果你和作者一样只是操作其他技术的Python API那就足够了。

Python的字符串在使用上和其他语言的差别不大,常规操作都是一样的

比如取一个下标的值等

a = '123456'
print(a[0])

这里要说的是Python字符串和其他语言不一样的东西,首先给大家说的是在Python中,字符串的截取叫做 “切片” ,可以直接操作

a = '123456789'
print(a[0]) ---取单个下标对应值
print(a[2:5:1]) ---从下标2开始截取到下标5,截取步长为1
print(a[2:5:2]) ---从下标2开始截取到下标5,截取步长为2
print(a[2:5])	---从下标2开始截取到下标5,截取步长默认为1
print(a[:5])	---开始下标默认是0,截取到5
print(a[2:])	---从下标2开始截取到末尾
print(a[:])		---截取所有,相当于直接输出a
print(a[::-1])	---如果步长是负数,则结果是倒着截取的987654321
print(a[-4:-1])		---截取范围为负数的时候,同样是倒着截取678,而且注意倒着的时候下标是从1开始算,结果是678
print(a[-4:-1:1])	---当范围的两个数是负数,步长是正数时,和a[-4:-1]没差别,只是随着步长的变动截取间隔随之变动而已print(a[-9:-1:-1])	---注意这一条是不会有输出的,因为截取和范围的方向会相互冲突
print(a[-1:-9:-1])	---上一条想输出结果就要使得方向不冲突

这个切片,也就是截取操作大家看完之后可能会一脸闷,尤其是最后两条,所以我总结了一下,大家记住要领就好了

切片要领:
1、三个参数,前两个是范围,最后一个是步长
2、三个参数,正负均可,为正时代表从左开始计位,为负反之
3、范围确定区间的方向一定不能和步长的方向相冲

上面是字符串的截取操作,下面给大家介绍字符串的常用操作方法,注意只介绍常用方法,不常用的用到了网上自己找资料吧

一、查找使用find,c语言里面叫做模式匹配,其实就是找到子串在母串中的其实位置,如果找不到返回-1,该方法后两位参数是母串中的下标范围

a = '123456789'
print(a.find('34'))
print(a.find('34',5,8))

二、修改

replace(旧,新,替换次数),替换次数说的是母串中有多个旧串时替换多少个,不写全部替换,但是注意,该方法不会直接改原有母串,而是返回一个新的字符串,因为Python的字符串和其他语言一样是一个不可变的数据类型

a = '123456789'
print(a.replace('1','0'))

split(分割字符,分割次数),分割方法,分割次数说的是如果有多个分割字符,那么可以控制分割的次数,但是次数的计位是从第一次出现分割字符开始的,该方法结果返回的是一个列表

a = '123456789'
print(a.split('3'))

join(多个字符串或者一个列表),这个方法其实就是起到一个交替拼接的作用

b = ['a','b','c']
print('---'.join(b))
结果:a---b---c

capitalize(),将字符串第一个字符变为大写,其他字符全部小写

a = 'aBDYdBD'
print(a.capitalize())
结果:Abdydbd

title(),将字符串中每一个单词的首字母变为大写

a = 'abc abc abc'
print(a.title())
结果:Abc Abc Abc

lower(),全部小写

a = 'ABC abc abc'
print(a.lower())

upper(),全部大写

a = 'abc abc abc'
print(a.upper())

lstrip()、rstrip()、strip(),删除左侧、右侧、两侧的空白

a = '      abc abc abc'
print(a.lstrip())

ljust(对其长度,填充字符)、rjust()、center(),字符串左、右、中对其,注意中对其的时候有时候本不是绝对的居中,因为留给填充的位数不一定够

a = 'abc abc abc'
print(a.ljust(15,'.'))
结果:abc abc abc....

startswith()、endswith(),判断开头或结尾的字符串是否存在

a = 'abc abc abc'
print(a.startswith('abc'))
结果:True

isalpha()、isdigit()、isalnum()、isspace(),最后四个就不演示了,也是返回布尔类型,依次的作用是是否全是字母、是否全是数字、是否只是由数组字母组成、是否只有空格字符


常用的方法介绍结束了,最后给大家介绍一些Python字符串的小知识点

在之前的知识点中说了,Python的字符串用单引号或者双引号都可以,但其实也可以用三引号包裹

''' 123 '''
""" 123 """

三引号使用来做文档输出的,也就是说,随着内容的换行、缩进等等,都会体现

a = '''
I
am
Tom
'''
print(a)

做文档的输出时,三引号还有一个好处,当我们希望输出单引号时我们普通的输出时如下格式,需要单双引一起配合

print("I'm Tom")
或者
print('I\'m Tom')

而三引号没有这个顾虑

a = '''
I'm
Tom
'''
print(a)

最后Python不止有print输出函数,也支持input输入函数,当然输入接收的结果都是字符串,如果我们想要转换类型,Python给我们提供了直接转换的方法,比如想接收一个数值型,我们直接调用方法就可以

a = input()
b = int(a)

当然这种转换函数很多,不止是用来转换字符串的,下面我找了一些常用的,大家用的时候网上也找找就好
在这里插入图片描述

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

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

相关文章

GPT-4o VS GPT-3.5 完胜

前言: 最近,GPT-4o已经限时免费开放了,试了一下,然后,说我的时间到了,然后,有给我转到3.5,正好遇到一个问题做一下对吧,感觉4O完胜啊。3.5还是很好胡诌,也就…

java web爬虫

目录 读取本地文件 从网站读取文件 java爬虫 总结 读取本地文件 import java.io.File; import java.io.PrintWriter; import java.util.Scanner;public class ReplaceText {public static void main() throws Exception{File file new File("basic\\test.txt"…

如何使用Dora SDK完成Fragment流式切换和非流式切换

我想大家对Fragment都不陌生,它作为界面碎片被使用在Activity中,如果只是更换Activity中的一小部分界面,是没有必要再重新打开一个新的Activity的。有时,即使要更换完整的UI布局,也可以使用Fragment来切换界面。 何…

激光焊接机作为一种高效、精密的焊接设备

激光焊接机是一种用于材料加工时激光焊接的机器,以下是对其的详细介绍: 1. 定义与别称: 激光焊接机,又常称为激光焊机、镭射焊机,是材料加工激光焊接时用的机器。 2. 工作原理: 激光焊接是利用高能量…

进程间通信(27000字超详解)

🌎进程间通信 文章目录: 进程间通信 进程间通信简介       进程间通信目的       初识进程间通信       进程间通信的分类 匿名管道通信       认识管道       匿名管道       匿名管道测试       管道的四种…

电商商城管理系统

前言👀~ 将近一个月没更新了,最近忙着学校的大作业,一个是微信小程序的、一个是互联网编程的,也是忙完了这个大作业,这个大作业前端使用了vue、后端使用了java,接下来展示一些效果图,如果有需要…

HTTPS协议原理

HTTPS协议原理 一.前言-为何要有https协议二.加密与中间方劫持1.什么是加密2.为何要加密3.对称加密1.小例子2.好处和缺点 4.非对称加密5.数据指纹/数据摘要 三.站在设计者的角度提出方案1.只使用非对称加密 : 且只有server有密钥2.只使用非对称加密 : 且双方都有密钥3.非对称对…

网络安全-钓鱼篇-利用cs进行钓鱼

一、环境 自行搭建,kill,Windows10,cs 二、原理 如图所示 三、钓鱼演示 首先第一步:打开System Profiler-分析器功能 选择克隆www.baidu.com页面做钓鱼 之后我们通过包装域名,各种手段让攻击对象访问:h…

TH方程学习(3)

一、编程实现 根据论文给出的案例&#xff0c;使用TH方程进行数值仿真 1.初始化条件 %% 参考文献<New State Transition Matrix for Relative Motion on an Aribitrary Elliptical Orbit> %% 作者 Yamanaka Koji clc;clear global miu Re miu 3.986e5; Re 6378.137;…

阿里云语音合成TTS直播助手软件开发

阿里云的TTS比较便宜&#xff0c;效果比不了开源克隆的那种&#xff0c;比纯机器人效果好一点点 阿里云sambert https://help.aliyun.com/zh/dashscope/developer-reference/quick-start-13 Sambert系列模型 1万字1元 &#xff0c;每主账号每模型每月3万字免费 创建API-KEY htt…

域内用户枚举和密码喷洒

一. 域内用户枚举原理和流量 1. 原理 在AS-REQ阶段客户端向AS发送用户名&#xff0c;cname字典存放用户名&#xff0c;AS对用户名进行验证&#xff0c;用户存在和不存在返回的数据包不一样。 不同之处主要是在返回数据包中的状态码不同&#xff0c;根据不同的状态码来区分账…

271 基于matlab的可调Q因子小波变换故障诊断

基于matlab的可调Q因子小波变换故障诊断&#xff0c;可用在轴承、齿轮、活塞等故障诊断中&#xff0c;程序中包含了原始TQWT工具箱和轴承振动信号信号的谱包络的求取。通过仿真数据、实际轴承数据说明了方法的效果。程序已调通&#xff0c;可直接运行。 271 可调Q因子小波变换 …

基于java的CRM客户关系管理系统(二)

目录 第二章 相关技术介绍 2.1 后台介绍 2.1.1 B/S平台模式 2.1.2 MVC 2.1.3 Spring 2.1.4 Hibernate 2.1.5 Struts 2.2 前端介绍 2.2.1 JSP网页技术 2.3 开发工具 2.4 本章小结 前面内容请移步 基于java的CRM客户关系管理系统&#xff08;二&#xff09; 资源…

查看docker中各个容器所占的资源

要查看Docker中的每个容器占用的资源&#xff0c;可以使用docker stats命令。这个命令提供了容器的实时资源使用统计&#xff0c;包括内存使用情况。以下是如何使用docker stats命令的示例&#xff1a; docker stats --format "table {{.Name}}\t{{.CPUPerc}}\t{{.MemUsa…

Appium安装及配置(Windows环境)

在做app相关自动化测试&#xff0c;需要使用appium来做中转操作&#xff0c;下面来介绍一下appium的环境安装配置 appium官方文档&#xff1a;欢迎 - Appium Documentation 一、下载appium 下载地址&#xff1a;https://github.com/appium/appium-desktop/releases?page3 通…

进程——linux

目录 冯诺依曼体系结构&#xff08;计算机组成原理与体系结构&#xff09; 关于冯诺依曼&#xff0c;必须强调几点&#xff1a; 操作系统(Operator System) 概念 设计OS的目的 定位 如何理解 "管理" 总结 系统调用和库函数概念 承上启下 一、进程 基本概念…

C++:细谈Sleep和_sleep

ZINCFFO的提醒 还记得上上上上上上上上上上上上上上上上上上&#xff08;上的个数是真实的&#xff09;篇文章吗&#xff1f; 随机应变——Sleep()和_sleep() 但在ZINCFFO的C怪谈-02中&#xff1a; 我不喜欢Sleep...... 奤&#xff1f;媜煞鷥&#xff01; 整活&#xff01;…

STL中stack的使用

目录 一、stack类介绍和使用 stack类介绍 stack类定义 stack类常见构造函数 stack数据操作 empty()函数 top() pop() 和 push() 函数 size()函数 swap()函数 一、stack类介绍和使用 stack类介绍 1.stack是一种容器适配器&#xff0c;专门用在具有后进先出操作的上下…

C语言 指针——函数指针

目录 什么是函数指针&#xff1f; 函数指针的定义 定义函数指针时的常见错误 函数指针有什么用&#xff1f; 函数指针的主要应用 什么是函数指针&#xff1f; 函数指针 (Function Pointer) 就是指向函数的指针变量 数据类型 ( * 指针变量名 ) ( 形参列表 ); 例如&#x…