python数据类型-字符串

1 表示方式

python单行字符串用单引号’内容’或双引号"内容"表示,
多行字符串用三引号表示,‘’‘换行内容’''或"““换行内容””",
str()函数可将其它类型转换为字符串类型

a = 'henry'
b = "Tom"
c = '''窗前明月光,
疑是地上霜'''
d = """举头望明月,
低头思故乡"""
e = str(123)
print(e, type(e))  # 123 <class 'str'>

2 转义符 ‘\’

如’\n’代表换行的意思,将其放在字符串中如不不做处理,输出文本会进行换行,如f1;
那么假如需要在文本输出时展示\n,就需要将这个特殊字符进行转移,即加上转义字符\变成\n,让其在文本中失去特殊字符地意义,如f2;

f1 = str3 = '''你好,(\n)
举头望明月,
低头思故乡。
'''
print(f)
# 结果:
# 你好,(
# )
# 举头望明月,
# 低头思故乡。
f2 = str3 = '''你好,(\\n)
举头望明月,
低头思故乡。
'''
print(f)
# 结果:
# 你好,(\n)
# 举头望明月,
# 低头思故乡。

补充:
转义字符:\ + 字符
(1)把无意义的字符变的有意义
(2)把有意义的字符变的无意义
\n:换行
\r\n:换行
\t:缩进(tab,水平制表符)
\r:把\r后面的字符串直接拉到当前行行首

3 元字符串

r+字符串,表示字符串中是什么就输出什么,不受字符串中转义字符影响。

f = str3 = r'''你好,(\\n)
举头望明月,
低头思故乡。
'''
print(f)
# 结果:
# 你好,(\\n)
# 举头望明月,
# 低头思故乡。

4 字符串运算

字符串连接符:+
两字符串包含判断:in 或者 not in
元字符串输出:r或者R+字符串

a = 'aaa'  # aaabbbaaa
b = 'bbbaaa'  # True
print(a + b)
print(a in b)

字符串索引: str[i] 输出索引位置上的字符;
字符串截取、切片:str[:] 左闭右开,str[0:2]表示:截取字符串从0到1索引的字符,不包含索引为2的字符;

a = 'henry_hu'
print(a[0])  # h
print(a[0:2])  # he strings='hello'
print (strings)          # 输出字符串,结果为:hello
print (strings[0:-1])    # 输出第一个到倒数第二个的所有字符,结果为:hell
print (strings[0])       # 输出字符串第一个字符,结果为:h
print (strings[2:5])     # 输出从第三个开始到第五个的字符,结果为:llo
print (strings[2:])      # 输出从第三个开始的后的所有字符,结果为:llo
print (strings * 2)      # 输出字符串两次,也可以写成 print (2 * str),结果为:hellohello
print (strings + "TEST") # 连接字符串,结果为:helloTEST
#注意:Python 字符串不能被改变。向一个索引位置赋值,比如 strings[0] = 'y'会导致错误。

字符串分割:.split(‘分隔符’)
字符串替换:.replace(‘被替换的内容’,‘替换的内容’)
列表元素拼接:.join(a,b) ,split会将字符串分割成列表,join可以将列表中元素进行拼接

list1 = ['hello', '你好', '小王']
​
join1_str=','.join(list1)
print(join1_str) #结果为:hello,你好,小王
​
join2_str='|'.join(list1)
print(join2_str) #结果为:hello|你好|小王

5 字符串格式化

在这里插入图片描述

通过 % 运算符进行格式化:

name = "小王"
age = 25
pi = 3.14159
message = "My name is %s and I am %d years old,I know pi is %.2f" % (name, age, pi)
print(message)  # 输出:My name is 小王 and I am 25 years old,I know pi is 3.14

使用 .format() 方法进行字符串格式化

name = "小王"
age = 25
# 写法1
message1 = "My name is {} and I am {} years old.".format(name, age)
print(message1)  # 输出:My name is 小王 and I am 25 years old.name = "小王"
age = 25
message2 = "My name is {name1} and I am {age1} years old.".format(name1=name, age1=age)
print(message2)  # 输出:My name is 小王 and I am 25 years old.

f+字符串(字符串中有上文定义的变量):输出结果中直接赋变量值,类似于C#中的$

name = "小王"
age = 25
message = f"My name is {name} and I am {age} years old."
print(message)  # 输出:My name is 小王 and I am 25 years old.# 在Python 3.8 的版本中可以使用 = 符号来拼接运算表达式与结果
x = 1
print(f'{x+1=}')  # 输出:1+1=2
print(f'{x + 1}')  # 如果去掉 = , 输出:2

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

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

相关文章

快速入门JavaScript基础

JavaScript认知 序言 JavaScript发展历史(JS) 简称JS 1.Netscape(网景) 公司的这种浏览器脚本语言&#xff0c;最初名字叫做 Mocha2.1995年9月改为 LiveScript3.1995年12月&#xff0c;Netscape 公司与 Sun 公司&#xff08;Java 语言的发明者和所有者&#xff09;达成协议&am…

windows消息循环之手撸一个Win32窗口程序

Windows消息循环&#xff08;Windows Message Loop&#xff09; 在Windows操作系统中&#xff0c;一个程序通过不断地接收和处理消息来保持活动状态的一种机制。在Windows编程中&#xff0c;消息循环是处理用户输入、操作系统事件和其他消息的关键部分。 在Windows应用程序中…

再谈启动一个Activity大致时序图

太多了&#xff0c;笔者不想写&#xff0c; 读者可通过PlantUML插件查看如下PUML文件生成的时序图。 补充说明下&#xff0c;Android31版本。 startuml https://plantuml.com/sequence-diagram skinparam dpi 800 scale 15000 width scale 5000 heightautonumber Launcher La…

IT界含金量高的证书,除了软考证书,还有这15种

文章目录 计算机技术与软件专业技术资格考试全国计算机信息高新技术考试思科认证微软认证&#xff1a;华为认证IBM认证国家信息安全水平考试注册信息安全专业人员注册信息安全渗透测试工程师项目管理专业人士资格认证Red Hat认证CompTIA 认证CISSP认证Oracle认证Sun认证AWS认证…

Redis的五种常用数据结构以及其底层实现

1.字符串 字符串作为Redis中最基础的数据结构&#xff0c;他存储的值可以是任何东西&#xff0c;可以是字符串&#xff0c;数字&#xff0c;二进制&#xff0c;但是字符串存储的值不能超过512M 在Redis中字符串的底层编码是根据值进行改变的 当存储的字符串是一个数字的时候…

MYSQL中group by分组查询的用法详解(where和having的区别)!

文章目录 前言一、数据准备二、使用实例1.如何显示每个部门的平均工资和最高工资2.显示每个部门的每种岗位的平均工资和最低工资3.显示平均工资低于2000的部门和它的平均工资4.having 和 where 的区别5.SQL查询中各个关键字的执行先后顺序 前言 在前面的文章中&#xff0c;我们…

什么是git,怎样下载安装?

简介&#xff1a; 应用场景&#xff1a; 应用场景&#xff1a;团队企业开发 作用&#xff1a; 安装&#xff1a; 1.网址&#xff1a;Git - Downloads 很卡很慢 2.可以选择镜像网站下载&#xff08;推荐&#xff09; CNPM Binaries Mirror

每日一题 力扣514自由之路

514. 自由之路 题目描述&#xff1a; 电子游戏“辐射4”中&#xff0c;任务 “通向自由” 要求玩家到达名为 “Freedom Trail Ring” 的金属表盘&#xff0c;并使用表盘拼写特定关键词才能开门。 给定一个字符串 ring &#xff0c;表示刻在外环上的编码&#xff1b;给定另一…

WhisperBot:整合了Mistral大型语言模型的实时语音转文本系统

项目简介 欢迎来到 WhisperBot。WhisperBot 基于 WhisperLive 和 WhisperSpeech 的功能而构建&#xff0c;在实时语音到文本管道之上集成了大型语言模型 Mistral (LLM)。WhisperLive 依赖于 OpenAI Whisper&#xff0c;这是一个强大的自动语音识别 (ASR) 系统。Mistral 和 Whi…

企业中不同大数据迁移的区别是什么?

在大数据时代&#xff0c;企业面临着海量数据的管理、分析和应用挑战。为了克服数据存储、传输和处理中的难题&#xff0c;如数据量巨大、网络环境多变、存储成本高昂以及安全风险上升等&#xff0c;企业必须对数据进行备份、同步、分发或归档。这一过程中&#xff0c;数据的复…

STM32CubeMX教程31 USB_DEVICE - HID外设_模拟键盘或鼠标

目录 1、准备材料 2、实验目标 3、模拟鼠标实验流程 3.0、前提知识 3.1、CubeMX相关配置 3.1.0、工程基本配置 3.1.1、时钟树配置 3.1.2、外设参数配置 3.1.3、外设中断配置 3.2、生成代码 3.2.0、配置Project Manager页面 3.2.1、设初始化调用流程 3.2.2、外设中…

【C++】输入输出、缺省参数、函数重载

目录 C的输入和输出 缺省参数 概念 缺省参数的分类 全缺省参数 半缺省参数 函数重载 概念 C支持函数重载的原理--名字修饰 C的输入和输出 #include<iostream> // std是C标准库的命名空间名&#xff0c;C将标准库的定义实现都放到这个命名空间中 using namespace …

python基础之ORM操作Mysql数据库

首先简单介绍下SQLalchemy库和sqlacodegen库。 SQLalchemy 库是一个流行的 Python 数据库工具&#xff0c;用于与各种关系型数据库进行交互。它提供了一个统一的 API&#xff0c;使得开发人员可以使用相同的代码来操作不同的数据库&#xff0c;而无需关心数据库的具体细节。 …

【笔记】Helm-4 最佳实践-8 基于角色的访问控制

基于角色的访问控制 最佳实践的这部分讨论在chart清单中创建和格式化RBAC资源。 RBAC资源有&#xff1a; ServiceAccount(namespaced) Role(namespaced) ClusterRole RoleBinding(namespaced) ClusterRoleBinding YAML配置 RBAC和服务账户配置应该独立的key。它们是独立…

【WinRAR技巧】WinRAR整理密码是什么意思?

之前给大家介绍过WinRAR自动加密的设置方法&#xff0c;今天再介绍一种RAR压缩包加密方法&#xff1a;整理密码。 什么是整理密码&#xff1a; 在加密rar文件的时候&#xff0c;点击下拉框选择密码&#xff0c;不用输入密码 设置方法&#xff1a; 前面的操作步骤和设置自动…

ubuntu22.04@laptop安装配置VNC服务端

ubuntu22.04laptop安装&配置VNC服务端 1. 源由2. 系统安装3. VNC安装3.1 系统更新3.2 lightdm安装3.3 x11vnc安装3.4 x11vnc配置3.5 x11vnc自启动3.6 x11vnc状态查询 4. 演示视频 1. 源由 最近系统搞TensorFlow, OpenCV, Python&#xff0c;折腾各种环境&#xff0c;把系统…

GitLab升级16.8.0失败

漏扫报警Gitlab高危漏洞&#xff0c;于是立即升级。 yum命令提示有16.8.0可以升级&#xff0c;输入y 1G的软件包下载完毕&#xff0c;检测正常&#xff0c;安装软件包... 之后报错退出。 根据错误提示了解到由于上一次gitlab-ctl reconfigure执行失败导致执行升级程序退出。…

提升编程效率的利器: 解析Google Guava库之集合篇Table二维映射(四)

在Java开发中&#xff0c;我们经常使用Map数据结构来存储键值对&#xff0c;其中键是唯一的&#xff0c;可以快速查找到对应的值。但在某些场景下&#xff0c;我们可能需要一个更复杂的映射结构&#xff0c;其中键由两部分组成&#xff0c;类似于一个二维表格的行和列。Guava库…

自动化测试脚本编写(超详细)

&#x1f345; 视频学习&#xff1a;文末有免费的配套视频可观看 &#x1f345; 关注公众号【互联网杂货铺】&#xff0c;回复 1 &#xff0c;免费获取软件测试全套资料&#xff0c;资料在手&#xff0c;涨薪更快 自动化测试脚本 什么是自动化测试&#xff1f; 自动化测试是验…

Spring Cloud + Vue前后端分离-第15章 课程总结

源代码在GitHub - 629y/course: Spring Cloud Vue前后端分离-在线课程 Spring Cloud Vue前后端分离-第15章 课程总结 重点难点梳理 环境的搭建 代码生成器 文件上传和视频播放 通用权限设计 学习技巧 养成做笔记的习惯 养成阶段性提交代码的习惯 问答区多交流