python基础之序列类型的方法——字符串方法

Hello大家好,我是python学习者小杨同学,经过一段时间的沉淀(其实是偷懒不想更新),我终于想起了自己的博客账号,所以这次带来的是序列方法的后半部分:字符串的方法。

接上述的列表和元组的方法,我们这次来讲讲字符串的方法,现在我们一起开始学习吧。

注:字符串是不可变类型,改、删的操作将会改变原有字符串,说人话就是改了以后它就不是原来的那个它了(滑稽)

index()方法

与列表相同,index查询指定元素的下标值,如果没有该元素,则抛出错误,如果该字符串里有多个重复的数值,只返回从左开始的第一个:

a = 'hello world'
print(a.index('h'))
结果:0
# 也可以对连写元素
print(a.index('he'))
结果:0
# 如果重复,返回从左开始的第一个
print(a.index('l'))
结果:2
# 如果没有则抛出错误
print(a. index('z'))
ValueError: substring not found

count()方法

count方法可以计算指定元素在字符串中出现的个数:

a = "hello world"
print(a.count('l'))
结果:3
# 也可以像index()方法那样连写,如he
print(a.count('he'))
结果:1

find()方法

也是查询指定元素,也会返回指定下标。与index不同的是,如果该元素没有,则返回-1,故查询字符串的时候更推荐使用find方法,减少出错的可能:

a = 'hello world'
print(a.find('z'))
结果:-1

判断方法

字符串中还有四个用于判断的方法,分别是判断是否全是数字的isdigit()、判断是否全是字母的isalpha()、判断是否都是小写的islower()、以及判断是否都是大写的isupper(),这些方法返回的结果是True或者False,大家有兴趣可以尝试:

a = 'hello world'
# isdigit 判断该字符串中是否都是数字,返回True 或False
print(a.isdigit())
# isalpha 判断每个元素是否都是字母,如果字符串存在空格,就算全部都是字母也会返回False
print(a.isalpha())
# islower 判断字符串中是否都是小写字符
print(a.islower())
# isupper 判断字符字符是否大写
print(a.isupper())

讲完了查,现在讲改的方法,改的方法就比较朴素,没有查那么丰富了。

upper()方法

upper,顾名思义就是将字符串转换成大写:

a = 'hello world'
print(a.upper())
结果:HELLO WORLD

lower()

与之相反,自然会有个转换成小写的方法:

a = "HELLO WORLD"
print(a.lower())
结果:hello world

这部分操作呢,也可以叫做改,也可以叫做删,因为带有部分删除的功能,这里就叫它删吧

strip()

strip可以去除字符串两端的空格,当然也分出了lstrip删除左侧空格和rstrip删除右侧空格,这里以默认方法为准:

a = "		hello world		"
print(a.strip())
结果:hello world

如果你的字符串两端没有空格,则你可以指定一个元素,strip会为你删除指定的元素,如果该指定元素不存在,则无事发生:

a = "hello world"
print(a.strip('h'))
结果:ello world

split()方法

split可以指定一个元素,对字符串进行分列,同时删除该元素,如果该元素出现了多次,则分成多列

比如对一个hello world进行切割,切割l,则三个l一起切掉,该文本分为四段,并将结果转换成列表:

a = 'hello world'
print(a.split('l'))
结果:['he', '', 'owor', 'd']

replace()方法

replace可以将自定字符替换成自己想要的字符:

a = 'hello world'
print(a.replace('world','小杨'))
结果:hello小杨

字符串格式化等其他方法

通过加号来对两个字符串进行连接

如果有两个字符串,可以通过+来连接两个字符串:

a = 'hello'
b = 'world'
print(a+b)
结果:helloworld

占位符以及format的方法

概念:占位符说人话就是给一段字符串挖坑,挖完坑后用对应的东西填坑,并且挖了几个坑就必须填上几个坑

一开始的占位符看起来比较low,使用百分号%加上特定的字母来表示该占位符的数值类型,比如%S表示一个字符串,%d表示整数,%f表示浮点数,这里%.2f表示保留两位小数,使用%占位后,后面需要跟上%(填坑的数据)来填坑:

print('大家好,我是%s,今年%d岁,身高%.2f厘米' % ('小杨', 23, 170.0))
结果:大家好,我是小杨,今年23岁,身高170.00厘米

还有一种更加优雅的写法,也就是使用format方法来拼接,format的占位符是{},完成占位后使用.format(变量)来进行拼接

print('大家好,我是{}'.format('xiaoyang'))
结果:大家好,我是xiaoyang

join()方法

join方法可以用来拼接两个字符串,加两个字符串拼接在指定字符的两端,join后面只能接列表元组和字符串:

c = "+".join(['hello', 'world'])
print(c)
结果:hello+world

python基础之序列类型的方法——字符串方法的更多相关文章

  1. python基础之序列类型的方法——列表&元组

    Hello大家好,我是python学习者小杨同学,上次跟大家分享关于python的数值类型和序列类型,本次就承接上一节的内容,说一说序列类型的方法. 序列类型的方法,简单的来说就是四个字:增删改查.随 ...

  2. Python基础:序列(字符串)

    一.概述 字符串 类似于C中的字符数组(功能上更像C++中的string),它是由一个个 字符 组成的序列.与C/C++不同的是,Python中没有 字符 这个类型,而是用 长度为1的字符串 来表示字 ...

  3. Python基础:序列(列表、元组)

    一.概述 列表(list)是由一个个 Python对象 组成的序列.其中,Python对象 可以是任何类型的对象,包括 Python标准类型(数值.字符串.列表.元组和字典)以及 用户自定义类型(类) ...

  4. python基础之数值类型与序列类型

    Hello大家好,我是python学习者小杨同学,已经学习python有一段时间,今天将之前学习过的内容整理一番,在这与大家分享与交流,现在开始我们的python基础知识之旅吧. 数值类型与序列类型 ...

  5. Python基础__Python序列基本类型及其操作(1)

    本节考虑的Python的一个中要的内置对象序列, 所谓的序列即一个有序对象的集合.这里的对象可以是数字.字符串等.根据功能的不同将序列分为字符串.列表.元组,本文将以下这几种对象做一些介绍. 一. 字 ...

  6. python基础教程-第三章-使用字符串

    本章将会介绍如何使用字符串何世华其他的值(如打印特殊格式的字符串),并简单了解下利用字符串的分割.联接.搜索等方法能做些什么 3.1 基本字符串操作 所有标准的序列操作(索引.分片.乘法.判断成员资格 ...

  7. Python基础4:数据类型:数字 字符串 日期

    [ Python 数据类型 ] 我们知道,几乎任何编程语言都具有数据类型:常见的数据类型有:字符串.整型.浮点型以及布尔类型等. Python也不例外,也有自己的数据类型,主要有以下几种: 1.数字: ...

  8. python高级(二)—— python内置序列类型

    本文主要内容 序列类型分类: (1)容器序列.扁平序列 (2)可变序列.不可变序列 列表推导式 生成器表达式 元组拆包 切片 排序(list.sort方法和sorted函数) bisect pytho ...

  9. python基础之多态与多态性、绑定方法和非绑定方法

    多态与多态性 多态 多态并不是一个新的知识 多态是指一类事物有多种形态,在类里就是指一个抽象类有多个子类,因而多态的概念依赖于继承 举个栗子:动物有多种形态,人.狗.猫.猪等,python的序列数据类 ...

随机推荐

  1. 扩展NSDate类实现快捷使用 —— 昉

    获取当前日期和时间: +(NSDate *)getCurrentDate{ NSDate *now = [NSDate date]; return now; } 将日期转换为字符串: +(NSStri ...

  2. 微信小程序音频播放 InnerAudioContext 的用法

    今天项目上涉及到了微信小程序播放音频功能,所以今天跟着一些教程做了个简单的播放器 1.实现思路 刚开始想着有没有现成的组件可以直接用,找到了微信的媒体组件 audio,奈何看着 1.6.0版本开始,该 ...

  3. 文件I/O流、文件、FileInputStreaam、FileOutputStream、FileReader、FileWriter的介绍和使用

    一.文件:保存数据的地方 1.文件流:文件在程序中是以流的形式类操作的 类比: 流:数据在数据源(文件)和程序(内存)之间经历的路径 输入流:数据从数据源(文件)到程序(内存)的路径 输出流:数据从程 ...

  4. 关于Synchronized你了解多少?

    1.说一说自己对于 synchronized 关键字的了解 synchronized是解决多线程之间访问资源的同步性,synchronized关键字可以保证被他修饰的资源在任何时刻只有一个线程访问. ...

  5. 03并发编程(多道技术+进程理论+进程join方法)

    目录 03 并发编程 03 并发编程

  6. 基于TI DSP TMS320C6455、Xilinx V5 FPGA XC5VSX95T的高速数据处理核心板

    一.板卡概述 该DSP+FPGA高速信号采集处理板由我公司自主研发,包含一片TI DSP TMS320C6455和一片Xilinx V5 FPGA XC5VSX95T-1FF1136i.包含1个千兆网 ...

  7. ASP.NET Core 6框架揭秘实例演示[05]:依赖注入基本编程模式

    毫不夸张地说,整个ASP.NET Core就是建立在依赖注入框架之上的.ASP.NET Core应用在启动时构建管道所需的服务,以及管道处理请求使用到的服务,均来源于依赖注入容器.依赖注入容器不仅为A ...

  8. 轻量级DI框架Guice使用详解

    背景 在日常写一些小工具或者小项目的时候,有依赖管理和依赖注入的需求,但是Spring(Boot)体系作为DI框架过于重量级,于是需要调研一款微型的DI框架.Guice是Google出品的一款轻量级的 ...

  9. 请求XSS攻击原理

    起因 巨人的肩膀 一个神秘URL酿大祸,差点让我背锅! (qq.com)

  10. 使用第三方插件pagination在页面实现分页功能

    1.导入相应的js和css文件 2.在相应的页面映入pagination.js和pagination.css 3.将页面的分页代码替换为pagination动态生成的分页代码 4.编写js代码