【Python基础011】Python中字符串的具体用法

1、创建

        字符串的创建共有3种方式

        1)单/双引号创建短字符串

s = 'hello world's = “hello world”

        2)三个单/双引号创建短字符串

        三个单/双引号一般用于多行文本的注释,如果将这样的字符串用print打印,或者赋给一个变量,会输出一个长字符串,同时这个长字符串还将保留原始的格式。

s = '''helloworld'''

        3)转化生成

        可以使用str()函数将其他形式的变量转化为字符串

d = 12141252s = str(d) # '12141252'

2、转义字符

        转义字符通常用于在字符串中指定换行符,制表符或者在字符串中需要出现引号的情景,具体实现为“\ +特殊字符”

转义字符描述
\(在行尾时)续行符
\\反斜杠符号
\'单引号
\"双引号
\b退格(Backspace)
\t制表符
\r回车
\n换行符
a = 'I\nLove\nPython' # \n 换行符print(a)

b = "aa\tbb\tcc" # \t 制表符print(b)

c = 'Let\'s go' # 单引号中同时包含单引号使用'进行转义print(c)

3、拼接

        连接字符串可以使用(+),也就是字符串的加法运算。还可以将多个字面字符串直接放到一起实现拼接。

a='Hello'b='World'c=a+b # 使用加号进行字符串拼接print(c)

c='Hello''World' # 将多个字面字符串直接放到一起实现拼接print(c)

4、复制

        Python 中使用*可以实现字符串复制。

a = 'Python'*3print(a)

5、下标与切片

        所有序列类型都可以进行某些特定的操作,这些操作包括:索引、切片以及检查某个元素是否属于序列的成员。

        1) 下标即索引

        字符串的本质就是字符序列,可以通过在字符串后面添加[],在[]里面指定偏移量,可以提取该位置的单个字符。

        正向搜索:

                最左侧第一个字符,偏移量是0,第二个偏移量是1,以此类推。直到len(str)-1 为止。

        反向搜索:

                最右侧第一个字符,偏移量是-1,倒数第二个偏移量是-2,以此类推,直到-len(str)为止。

        2)字符串的切片

        字符串的截取是实际应用中经常使用的技术,被截取的部分称为“子串”。Python 可以通过切片获取子串。切片与使用索引来访问单个元素类似,语法格式如下,其中string 表示需要取子串的源字符串变量。   

 string[start:end:step]

        1) start、end、step 三个参数为正数时表示从string 的第start 个索引位置开始到第end 个索引之间截取子串(包括start 不包括end),截取的步长是step。

s='ILOVEPYTHON'print(s[:]) # start 和end 都省略,截取整个字符串输出结果:ILOVEPYTHON

print(s[2:]) # end 省略,从start 开始到结束输出结果:OVEPYTHON

print(s[:2]) # start 省略从0 开始到end-1 输出结果:IL

print(s[2:4]) # 从start 开始到end-1 输出结果:OV

print(s[1:5:2]) # 从start 提取到end-1,步长是step 输出结果:LV

        2) start、end、step 三个参数为负数时表示从string 的倒数第start 个索引位置开始到倒数第end 个索引之间截取子串(包括start 不包括end),截取的步长是step,最后一个元素的索引为-1。

s='ILOVEPYTHON'print(s[-3:]) # 从倒数第三个开始到结束输出结果HON

print(s[-8:-3]) # 从倒数第八个开始到倒数第四个输出结果VEPYT

print(s[::-1]) # 步长为-1,从右向左截取输出NOHTYPEVOLI

6、格式化

        1)format 基本用法

        Python2.6 开始,新增了一种格式化字符串的函数str.format(),它增强了字符串格式化的功能。字符串格式化参数并不是用百分号(%)表示,而是用一对大括号({}),而且支持按顺序指定格式化参数关键字格式化参数

        a.顺序指定格式化参数

       

 print(“{0} {1} {2}”.format(11,22,33)) # 运行结果:11 22 33

print(“{1} {0} {2}”.format(11,22,33)) # 运行结果:22 11 33

        上面的代码在字符串中指定了三对空的大括号,这代表三个格式化参数,不需要指定数据类型,可以向其传递Python 语言支持的任何值。通过format 方法传入三个值(11,22,33),这三个值会按顺序替换格式化字符串中的三对空的大括号。

        b.关键字格式化参数

        命名格式化参数是指在一对大括号中指定一个名称,然后调用format 方法时也要指定这个名称。

print(“{a} {b} {c}”.format(a=1,b=2,c=3)) # 运行结果是:1 2 3

        上面的代码在三对大括号中分别添加了“a”“b”“c”。通过format 方法指定了这三个关键字参数的值。可以看到,并没有按顺序指定关键字参数的值。这也是使用关键字参数的好处。只要名字正确,format 参数的顺序可以任意指定。当然顺序方式和关键字参数方式可以混合使用,而且还可以指定顺序方式中格式化参数从format 方法提取参数值的顺序,甚至可以取format 方法参数值的一部分。

s="我叫{0},今年{1}岁"print(s.format('张三',23,13000))c = "我的名字是{name},年龄是{age}"print(c.format(age=19,name='李四'))

        2)format 填充对齐

        format 方法还可以控制值的左、中、右对齐, “^”、“<”、“>”分别是居中、左对齐、右对齐,后面带宽度。

        语法:        

‘{:X<>^x}.format('xx')’

        X为填充的字符,只能是一个字符,不指定的话默认是用空格填充。

print("{:*>8}".format("245"))print("{:#^20}".format("Python"))

        3) 数字格式化

        format 方法还支持很多其他的控制符,例如,可以将整数按浮点数输出。

数字格式输出描述
1.23456789{:.3f}1.234保留小数点后三位
-1.23456789{:-.3f}-1.234带符号保留小数点后三位
1.23456789{:.0f}1不带小数
6{:0>5f}00006数字补零,填充左边,总宽度为5
6{:a<3f}6aa数字补a,填充右边,总宽度为3
1000000{:,}1,000,000以逗号分隔的数字格式
0.23{:.2%}23.00%百分比格式
1000000{:.2e}1.00E+06科学计数法
16{:5d}   16右对齐,宽度5
16{:<5d}16左对齐,宽度5
16{:^5d}  16  居中对齐,宽度5
a = "我是{0},我身高{1:.2f}"print(a.format("张三",1.734))

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

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

相关文章

leetcode贪心算法题总结(二)

本节目录 1.最长回文串2.增减字符串匹配3.分发饼干4.最优除法5.跳跃游戏II6.跳跃游戏7.加油站8.单调递增的数字9.坏了的计算器 1.最长回文串 最长回文串 class Solution { public:int longestPalindrome(string s) {//计数一&#xff1a;用数组模拟哈希表int hash[127] {0}…

自定义拖拽表单的优势表现在哪里?

利用自定义拖拽表单&#xff0c;可以让办公更轻松&#xff0c;效率更高&#xff0c;是理想的提质增效办公工具。哪里有自定义拖拽表单&#xff1f;它又有什么样的优势特点&#xff1f;流辰信息是专业研发低代码技术平台的服务商&#xff0c;经验足、研发实力强、服务好&#xf…

2024年第三届服务机器人国际会议(ICoSR 2024) | Ei、Scopus双检索

会议简介 Brief Introduction 2024年第三届服务机器人国际会议(ICoSR 2024) 会议时间&#xff1a;2024年7月26日-28日 召开地点&#xff1a;中国杭州 大会官网&#xff1a;www.iwosr.org 进入新时代&#xff0c;科技更新迭代快速发展&#xff0c;机器人不仅变得更加节能&#x…

Python3 XML解析

Python3 XML解析 什么是XML&#xff1f; XML 指可扩展标记语言&#xff08;eXtensible Markup Language&#xff09;&#xff0c;标准通用标记语言的子集&#xff0c;是一种用于标记电子文件使其具有结构性的标记语言。 XML 被设计用来传输和存储数据。 XML是一套定义语义…

HarmonyOS page生命周期函数讲解

下面 我们又要看一个比较重要的点了 页面生命周期 页面组件有三个生命周期 onPageShow 页面显示时触发 onPageHide 页面隐藏时触发 onBackPress 页面返回时触发 这里 我们准备两个组件 首先是 index.ets 参考代码如下 import router from ohos.router Entry Component struc…

gFTP - 多线程 FTP 客户端工具

gFTP - 多线程 FTP 客户端工具 1. Download gFTP2. GUIReferences https://github.com/masneyb/gftp gFTP is a free and open-source multithreaded File Transfer Protocol client program. It is most used on Unix-like systems such as Linux, macOS, and Sony PlayStati…

FPGA设计时序约束十四、Set_External_Delay

一、序言 在时序约束中对clock的约束还存在一种特殊的延时约束set external delay。set external delay如字面含义&#xff0c;设置外部的时延值&#xff0c;但这个外部时延主要是指反馈时延&#xff0c;即信号从FPGA的output端口输出后经过外部电路回到输入端口的时延值。 二…

如何文件从电脑传到iPhone,这里提供几个方法

本文介绍了如何使用Finder应用程序、iTunes for Windows、iCloud和谷歌照片将照片从Mac或PC传输到iPhone。 如何将照片从Mac传输到iPhone 如果你有一台Mac电脑&#xff0c;里面装满了你想转移到iPhone的照片&#xff0c;这是一件非常简单的事情。只需遵循以下步骤&#xff1a…

AI大模型时代下运维开发探索第二篇:基于大模型(LLM)的数据仓库

在SREWorks社区聚集了很多进行运维数仓建设的同学&#xff0c;大家都会遇到类似的挑战和问题&#xff1a; 数仓中存储大量数据消耗成本&#xff0c;但很多存储的数据却并没有消费。进数仓的ETL学习成本高、管理成本高&#xff0c;相关同学配合度低&#xff0c;以及上游结构改动…

手写Spring与基本原理--简易版

文章目录 手写Spring与基本原理解析简介写一个简单的Bean加载容器定义一个抽象所有类的BeanDefinition定义一个工厂存储所有的类测试 实现Bean的注册定义和获取基于Cglib实现含构造函数的类实例化策略Bean对象注入属性和依赖Bean的功能Spring.xml解析和注册Bean对象实现应用上下…

数据结构--二叉搜索树的实现

目录 1.二叉搜索树的概念 2.二叉搜索树的操作 二叉搜索树的插入 中序遍历(常用于排序) 二叉搜索树的查找 二叉搜索树的删除 完整二叉树代码&#xff1a; 二叉搜索树的应用 key/value搜索模型整体代码 1.二叉搜索树的概念 二叉搜索树又称二叉排序树&#xff0c;它或者是一…

写实风格3D模型材质贴图

在线工具推荐&#xff1a; 3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.js AI自动纹理开发包 - YOLO 虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎 写实3D模型的制作过程包括建模、材质贴图、灯光设置和渲染等步骤。首…