来学Python啦,大话字符串
To be a happy man, reading, travel, hard work, care for the body and mind。做一个幸福的人,读书,旅行,努力工作,关心身体和心境。
前面我们讲解过关于用Python写温度转换器,画“Python”,天天学习的代码讲解和数字类型。不知大家是否还记得,忘记的可以点击上面的专辑去里面复习一下哦,也可以敲敲代码,提高对语句的熟练程度。
学完Python后,你会发现Python可以做很多高大上的事情,比如爬虫,数据分析,机器学习,游戏开发等,这些都是建立在Python基础上的,所以想要用好Python,基础知识是一定要打牢的,而字符串又是基础中的重点,所以小编今天准备和大家一起学习字符串的语法知识啦。
首先,小编将字符串分为四大块,分别是字符串类型,字符串操作符,字符串处理函数,字符串处理函数方法。
一、字符串类型
我们在C语言中曾讲过一些关于字符串的知识,不过C语言和Python的字符串知识相差还是蛮大的,Python提供的功能比C语言感觉会多一点图片图片图片。
这里我们先康康字符串的概念:由0个或多个字符组成的有序字符序列,且由一对单引号或一对双引号表示,比如在输出时:print(“Hello,world”)或者print(‘C’)。
既然字符串是字符的有序序列,那么就可以对其中的字符进行索引,这个索引呢,在之前也是有讲过,在…在那个温度转换器的实例中说过,不过在这里小编给大家带来了一个高级版的切片用法,至于简单的切片用法,emmm,小编就放个链接啦(索引里面也有哦):来学Python啦,用Python详细讲解温度转换器
切片:形式为<字符串>[M:N],M缺失表示至开头,N缺失表示至结尾,如:
”0123456789“[:3]结果为“012”
高级切片多了一个对步长进行切片,形式为<字符串>[M:N:K]。这比以前学的切片多了一个变量,即K。意思是说从M开始,到N个中,以步长为K来对字符进行输出,如:
"0123456789"[::-1]结果为"987654321"
关于单双引号的问题,就要提到字符串的表示方法,有几种表示方法,如上面说到的单双引号,可能会有人问如果要打印双引号或者单引号呢,我们可以用对应的单引号或者双引号来处理,如:print(‘这里有个双引号""’),大家也可以多试试,毕竟真的想要学好编程,不敲个几万行代码怎能学会(小编不贩卖焦虑)。
关于字符串表示Python还提供了一个功能(逆序),这是在C语言中没有的,以至于在C语言中还得弄几行代码来完成它。逆序的简单表示方法:
"0123456789"[::-1]结果为"987654321"
最后还有一个转义字符\,它作用便是表达特定字符的本意,如"则表示双引号。当然\还有其它的作用,如\b表示回退,在下面代码实例中,输出时行字会消失,因为在输出打印时光标会回退一位,即后面的字符掩盖了前面一位的字符。
print('此行\b“行”会消失')
输出结果为:
二、字符串操作符(三个)
关于字符串操作符,这里介绍三个比较常用的操作符:
**x+y:**连接两个字符串x和y。这个连接方法在有些地方并不太适合,怎么说呢,比如在写爬虫时连接url和某些字符串时,我们通常用的是urljoin来连接。
**nx或xn:**复制n次字符串x(n为数字),在平时也很少用到。
**x in s:**如果x是s的字串,返回True,否则返回False(in是保留字)判断x是否在s中。
三、字符串处理函数(六个)
既然是字符串处理函数,那么这里小编为大家整理了常用的六个函数,不造大家是否会觉得在开始学Python时接触的函数比较多,然后给人一种很难的感觉,其实并不是,函数往往是包含了很多功能,这样在写起代码来会简洁很多。
在这六个函数中我们用得最多的应该就是len(x)函数了,它返回的是字符串的长度,值得注意的是字母,数字和标点符号等都属于字符串中的一部分。如len(“1234”)结果为4。
其次便是str(x),它返回的是x所对应的字符串形式,无论是什么类型,都会返回成字符串形式,这么看来它是和eval函数相反的。如:str(1.23)结果为“1.23”。
Python还提供了进制转换函数,可以将整数转换为十六进制或八进制。它所提供的是hex(x)和oct(x)两个函数,分别对应的是十六进制和八进制的转换。如:hex(425)的结果为“0x1a9”,oct(425)结果为“0o651”。
还有两个函数不怎么经常用到,是关于Unicode编码的,分别是:
chr(u):u为Unicode编码,返回其对应的字符
ord(x):x为字符,返回其对应的Unicode编码
关于Unicode编码小编也没仔细去研究,知道怎么用就行。不过听说关于编码的字符还蛮多的,十二星座的小图标都有哦。
四、字符串处理函数方法(八个)
了解了字符串处理函数,我们得趁热打铁熟悉熟悉字符串处理函数的八个方法,它们在平时用到的次数也是相当多的,也非常好用,不得不说Python的函数库真的多。
1.str.lower:返回字符串的副本,打印字符的小写形式。如:
print("ABCDEFG".lower())结果为abcdefg
2.str.upper:返回字符串的副本,打印字符的大写形式。和上面是相反的,如:
print("abcdefg" .upper())结果为ABCDEFG
3.str.split(sep=None):返回一个列表,由str根据sep被分隔的部分组成。这个函数小编倒是折腾了一下,因为一开始没看明白,不过多试几次代码找不同点就很容易理解了。如:
print("A1B1C".split("1"))
print("A,B,C".split(","))
它们的输出结果是一样的:
4.str.count(sub):返回字串sub在str中出现的次数,效果还蛮强,感觉平时用的机会不多。如:
"an apple a day".count("a")#结果为4
5.str.replace(old,new):返回字符串str副本,所有old字串被替换为new。简单来说,就是字符串的替换过程。如:
"Python".replace("n","n123.io")#结果为"Python123.io"
6.str.center(width[,fillchar]):字符串str根据宽度width居中,fillchar可选,这在项目中写主题时就很好用了,用函数居中可谓是方便了不少。如:
"Python".center(20,"=")结果为'=======Python======='
7.str.strip(chars):从str去掉在其左侧和右侧chars中列出的字符。如:
"=python=".strip("=np")#结果为"ytho"
8.str.join(iter):在iter变量除最后元素外每个元素后增加一个str.用于字符串分隔,如:
",".join("12345")#结果为"1,2,3,4,5"
相关文章:

来学Python啦,大话字符串
To be a happy man, reading, travel, hard work, care for the body and mind。做一个幸福的人,读书,旅行,努力工作,关心身体和心境。 前面我们讲解过关于用Python写温度转换器&…...

pyqt5设置背景图片
PyQt5设置背景图片 1、打开QTDesigner 创建一个UI,camera.ui。 2、创建一个pictures.qrc文件 在ui文件同级目录下先创建一个pictures.txt,填写内容: <RCC><qresource prefix"media"><file>1.jpg</file>…...

C# WPF 自己写的一个模拟病毒传播的程序,有可视化
源代码: https://github.com/t39q/VirusSpread 主要代码 using System; using System.Collections.Concurrent; using System.Collections.Generic; using System.Linq; using System.Text; using System.Threading; using System.Threading.Tasks;namespace VirusSpread.Bu…...

stable diffusion实践操作-大模型介绍-SDXL1大模型
系列文章目录 大家移步下面链接中,里面详细介绍了stable diffusion的原理,操作等(本文只是下面系列文章的一个写作模板)。 stable diffusion实践操作 提示:写完文章后,目录可以自动生成,如何生…...
软考高级系统架构设计师系列案例考点专题四:嵌入式系统
软考高级系统架构设计师系列案例考点专题四:嵌入式系统 一、相关概念二、软件可靠性和硬件可靠性的区别三、可靠性指标四、可靠性设计五、冗余技术六、软件容错七、双机容错技术八、集群技术九、负载均衡十、可维护性的评价指标十一、软件维护的分类嵌入式每年必考一题,但是属…...

Django Form实现表单使用及应用场景
首先需要定义一个使用场景: 音乐网站的前端部分可以添加上传歌手的单曲, 这个添加页面就使用django form表单来实现。 目录 数据表内容 歌手表及表模型 单曲表及表模型 演示表单使用 设置路由 创建form.py 视图实例化表单类 模板使用表单对象 表…...

golang面试题:json包变量不加tag会怎么样?
问题 json包里使用的时候,结构体里的变量不加tag能不能正常转成json里的字段? 怎么答 如果变量首字母小写,则为private。无论如何不能转,因为取不到反射信息。如果变量首字母大写,则为public。 不加tag,…...
国内项目管理中级证书CSPM-3正在报名!
CSPM-3中级项目管理专业人员认证,是中国标准化协会(全国项目管理标准化技术委员会秘书处),面向社会开展项目管理专业人员能力的等级证书。旨在构建多层次从业人员培养培训体系,建立健全人才职业能力评价和激励机制的要…...

vue表格不显示列号123456
我在网上找了半天,都是如何添加列号123456的,没有找到不显示列号的参考,现在把这个解决了,特此记录一下。 没有加右边的就会显示,加上右边的就隐藏了...

【大数据】Kafka 入门指南
Kafka 入门指南 1.Kafka 简介2.Kafka 架构3.分区与副本4.偏移量5.消费者组6.总结 1.Kafka 简介 Apache Kafka 是一种高吞吐、分布式的流处理平台,由 LinkedIn 开发并于 2011 年开源。它具有 高伸缩性、高可靠性 和 低延迟 等特点,因此在大型数据处理场景…...

Qt 5.15集成Crypto++ 8.8.0(MSVC 2019)笔记
一、背景 笔者已介绍过在Qt 5.15.x中使用MinGW(8.10版本)编译并集成Crypto 8.8.0。 但是该编译出来的库(.a和.dll)不适用MSVC(2019版本)构建环境,需要重新编译(.lib或和.dll…...
前端面试的话术集锦第 9 篇:高频考点(webpack性能优化)
这是记录前端面试的话术集锦第九篇博文——高频考点(webpack性能优化),我会不断更新该博文。❗❗❗ 在此章节中,我不会浪费篇幅给大家讲如何写配置文件。如果你想学习这方面的内容,那么完全可以去官网学习。在这部分的内容中,我们会聚焦于以下两个知识点,并且每一个知识…...
程序员,你真热爱编程吗?
程序员的热爱与演变 我发现,程序员这个行业不像其他行业那样,很多人是因为热爱编程才去做程序员,不会被逼无奈去做程序员(要是真有就太惨了)。 热爱编程的漫长过程 热爱过、⼜不爱了、⼜爱了,这是个过程…...
算法通关村-----海量数据的处理方法
从40亿中产生一个不存在的数 问题描述 给定一个文件,包含40亿个非负整数,请你设计一个算法,产生一个不在该文件中的数字。假设你只有1GB内存。 问题分析 40亿整数,在java中,用int存储的话,大概需要40亿✖️4B,大约…...

Pytorch 多卡并行(1)—— 原理简介和 DDP 并行实践
近年来,深度学习模型的规模越来越大,需要处理的数据也越来越多,单卡训练的显存空间和计算效率都越来越难以满足需求。因此,多卡并行训练成为了一个必要的解决方案本文主要介绍使用 Pytorch 的 DistributedDataParallel(…...

快速排序(重点)
前言 快排是一种比较重要的排序算法,他的思想有时候会作用到个别算法提上,公司招聘的笔试上有时候也有他的过程推导题,所以搞懂快排势在必行!!! 快速排序 基本思想: 根据基准,将数…...
python高级内置函数介绍及应用举例
目录 1. 概述2. 举例 1. 概述 Python中有许多高级内置函数,它们提供了丰富的功能和便利性,可以大大简化代码并提高效率。以下是一些常用的高级内置函数: map(): 用于将一个函数应用于一个可迭代对象的所有项,返回一…...

人体呼吸存在传感器成品,毫米波雷达探测感知技术,引领智能家居新潮流
随着科技的不断进步和人们生活质量的提高,智能化家居逐渐成为一种时尚和生活方式。 人体存在传感器作为智能家居中的重要组成部分,能够实时监测环境中人体是否存在,为智能家居系统提供更加精准的控制和联动。 在这个充满创新的时代…...

软件设计模式(三):责任链模式
前言 前面荔枝梳理了有关单例模式、策略模式的相关知识,这篇文章荔枝将沿用之前的写法根据示例demo来体会这种责任链设计模式,希望对有需要的小伙伴有帮助吧哈哈哈哈哈哈~~~ 文章目录 前言 责任链模式 1 简单场景 2 责任链模式理解 3 Java下servl…...

开发者的商业智慧:产品立项策划你知道多少?
文章目录 想法的萌芽🌟初步评估产品可行性🍊分析核心功能和特点以及竞争对手📝大健康监测📝时尚新科技产品📝准确性📝多功能📝品牌口碑📝数据分析与个性化建议📝社交互动…...

【JavaEE】-- HTTP
1. HTTP是什么? HTTP(全称为"超文本传输协议")是一种应用非常广泛的应用层协议,HTTP是基于TCP协议的一种应用层协议。 应用层协议:是计算机网络协议栈中最高层的协议,它定义了运行在不同主机上…...

Vue3 + Element Plus + TypeScript中el-transfer穿梭框组件使用详解及示例
使用详解 Element Plus 的 el-transfer 组件是一个强大的穿梭框组件,常用于在两个集合之间进行数据转移,如权限分配、数据选择等场景。下面我将详细介绍其用法并提供一个完整示例。 核心特性与用法 基本属性 v-model:绑定右侧列表的值&…...

dedecms 织梦自定义表单留言增加ajax验证码功能
增加ajax功能模块,用户不点击提交按钮,只要输入框失去焦点,就会提前提示验证码是否正确。 一,模板上增加验证码 <input name"vdcode"id"vdcode" placeholder"请输入验证码" type"text&quo…...
【Go】3、Go语言进阶与依赖管理
前言 本系列文章参考自稀土掘金上的 【字节内部课】公开课,做自我学习总结整理。 Go语言并发编程 Go语言原生支持并发编程,它的核心机制是 Goroutine 协程、Channel 通道,并基于CSP(Communicating Sequential Processes࿰…...
在Ubuntu中设置开机自动运行(sudo)指令的指南
在Ubuntu系统中,有时需要在系统启动时自动执行某些命令,特别是需要 sudo权限的指令。为了实现这一功能,可以使用多种方法,包括编写Systemd服务、配置 rc.local文件或使用 cron任务计划。本文将详细介绍这些方法,并提供…...

SpringTask-03.入门案例
一.入门案例 启动类: package com.sky;import lombok.extern.slf4j.Slf4j; import org.springframework.boot.SpringApplication; import org.springframework.boot.autoconfigure.SpringBootApplication; import org.springframework.cache.annotation.EnableCach…...

如何在最短时间内提升打ctf(web)的水平?
刚刚刷完2遍 bugku 的 web 题,前来答题。 每个人对刷题理解是不同,有的人是看了writeup就等于刷了,有的人是收藏了writeup就等于刷了,有的人是跟着writeup做了一遍就等于刷了,还有的人是独立思考做了一遍就等于刷了。…...
Java多线程实现之Thread类深度解析
Java多线程实现之Thread类深度解析 一、多线程基础概念1.1 什么是线程1.2 多线程的优势1.3 Java多线程模型 二、Thread类的基本结构与构造函数2.1 Thread类的继承关系2.2 构造函数 三、创建和启动线程3.1 继承Thread类创建线程3.2 实现Runnable接口创建线程 四、Thread类的核心…...
Python+ZeroMQ实战:智能车辆状态监控与模拟模式自动切换
目录 关键点 技术实现1 技术实现2 摘要: 本文将介绍如何利用Python和ZeroMQ消息队列构建一个智能车辆状态监控系统。系统能够根据时间策略自动切换驾驶模式(自动驾驶、人工驾驶、远程驾驶、主动安全),并通过实时消息推送更新车…...

TSN交换机正在重构工业网络,PROFINET和EtherCAT会被取代吗?
在工业自动化持续演进的今天,通信网络的角色正变得愈发关键。 2025年6月6日,为期三天的华南国际工业博览会在深圳国际会展中心(宝安)圆满落幕。作为国内工业通信领域的技术型企业,光路科技(Fiberroad&…...