【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.mzph.cn/news/584502.shtml

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

相关文章

3D游戏角色建模纹理贴图处理

在线工具推荐&#xff1a; 3D数字孪生场景编辑器 - GLTF/GLB材质纹理编辑器 - 3D模型在线转换 - Three.js AI自动纹理开发包 - YOLO 虚幻合成数据生成器 - 三维模型预览图生成器 - 3D模型语义搜索引擎 在本文中&#xff0c;我们将介绍 3D 纹理的基础知识&#xff0c;并讨…

【C语言】数据结构——排序二(快排)

&#x1f497;个人主页&#x1f497; ⭐个人专栏——数据结构学习⭐ &#x1f4ab;点击关注&#x1f929;一起学习C语言&#x1f4af;&#x1f4ab; 目录 导读&#xff1a;数组打印与交换1. 交换排序1.1 基本思想&#xff1a;1.2 冒泡与快排的异同 2. 冒泡排序2.1 基本思想2.2 …

【Unity动画系统】Animator有限状态机参数详解

&#x1f468;‍&#x1f4bb;个人主页&#xff1a;元宇宙-秩沅 &#x1f468;‍&#x1f4bb; hallo 欢迎 点赞&#x1f44d; 收藏⭐ 留言&#x1f4dd; 加关注✅! &#x1f468;‍&#x1f4bb; 本文由 秩沅 原创 &#x1f468;‍&#x1f4bb; 收录于专栏&#xff1a;Uni…

校园跑腿小程序源码系统:取快递+寄快递+食堂超市跑腿 带完整的搭建教程

现如今&#xff0c;越来越多的校园生活服务需求涌现出来。为了满足学生们的日常需求&#xff0c;校园跑腿小程序应运而生。这款小程序集成了取快递、寄快递、食堂超市跑腿等功能&#xff0c;为学生们提供了一个方便、快捷的生活服务平台。 以下是部分代码的示例&#xff1a; 系…

如何使用工具查看机系统信息,应用管理、文件管理

摘要 克魔助手是一款功能丰富的手机助手软件&#xff0c;提供了诸多实用的功能模块&#xff0c;包括手机系统信息显示、应用管理、文件管理、描述文件安装与测试、崩溃日志、实时日志、截图、活跃程序、性能监控和网络抓包等。本文将对克魔助手的界面概览和各功能模块进行详细…

数据结构面试题目

什么是数据结构&#xff1f;计算机存储、组织数据的方式。数据结构包括逻辑结构、物理结构和对数据的一系列操作。其中逻辑结构包括了线性结构&#xff08;线性表、栈和队列&#xff09;和非线性结构&#xff08;树、图&#xff09;&#xff1b;物理结构包括顺序存储结构和链式…

UGUI:一个轻量级的TFTLCD彩色显示屏GUI库

目录 一、引言 二、移植说明 三、如何使用UGUI函数 2.1 UGUI函数介绍 2.2 窗口控件管理 2.3 如何建立一个按键 四、如何实现触摸控制 一、引言 UGUI是一个经过精心设计的轻量级TFT-LCD彩色显示屏GUI库&#xff0c;旨在为用户提供高效、稳定且易于使用的图形用户界面。该…

邮件营销最佳时段:提升邮件打开率与转化率的策略

在如今数字时代&#xff0c;电子邮件营销已成为企业推广及与客户互动的有效途径。但是&#xff0c;一个普遍的现象是&#xff1a;何时发送电子邮件才能更合理&#xff1f;本文将探讨电子邮件营销的出色推送机会&#xff0c;并提供一些有用的提议&#xff0c;以帮助企业更好地规…

OrientDB使用教程:全面了解图数据库

图数据库在当今数据处理领域中扮演着越来越重要的角色&#xff0c;而OrientDB作为一种多模型的数据库&#xff0c;具有图数据库、文档数据库和对象数据库的特性&#xff0c;为应对不同场景提供了灵活的解决方案。本教程将简要介绍OrientDB的使用&#xff0c;包括基本概念、安装…

python subprocess run 和 Popen 的一些使用和注意事项

文章目录 一、run二、Popen NAME subprocess - Subprocesses with accessible I/O streams MODULE REFERENCE https://docs.python.org/3.9/library/subprocess The following documentation is automatically generated from the Python source files. It may be incomplete, …

QGraphicsItem器件移动及旋转相关问题

一、前言 Qt的图形视图框架中&#xff0c;可以使用如下接口设置图元坐标&#xff1a; void QGraphicsItem::setPos(const QPointF &pos)Sets the position of the item to pos, which is in parent coordinates. For items with no parent, pos is in scene coordinates.…

【数据结构】排序之插入排序

排序目录 1.前言2. 排序的概念及其运用2.1 排序的概念2.2 排序的运用2.3 常见的排序算法 3. 插入排序3.1 基本思想3.2 直接插入排序3.2.1 直接插入排序实现3.2.1.1 分析3.2.1.2 代码实现 3.3 希尔排序3.3.1 希尔排序实现3.3.1.1 分析3.3.1.2 代码实现 4. 附代码4.1 sort.h4.2 s…

Lumerical------按键中断程序执行

Lumerical------中断程序执行 引言正文 引言 在 Lumerical 中&#xff0c;很多时候我们需要通过 sweep 的方式来获取我们想要的结果&#xff0c;然而&#xff0c;有时候当我们运行程序后发现书写的脚本有问题时&#xff0c;我们想要强行终止程序的执行&#xff0c;该怎么办呢&…

K8s攻击案例:组件未授权访问导致集群入侵

K8s集群往往会因为组件的不安全配置存在未授权访问的情况&#xff0c;如果攻击者能够进行未授权访问&#xff0c;可能导致集群节点遭受入侵。比较常见的的组件未授权访问漏洞&#xff0c;主要包括 API Server 未授权访问、kubelet 未授权访问、etcd 未授权访问、kube-proxy 不安…

C++系列-第1章顺序结构-4-整型int

C系列-第1章顺序结构-4-整型int 在线练习&#xff1a; http://noi.openjudge.cn/ https://www.luogu.com.cn/ 总结 本文是C系列博客&#xff0c;主要讲述整型int的用法 整型int 在C中&#xff0c;int 是一个关键字&#xff0c;用于声明整型变量。int 类型用于存储整数&…

01的token的年度总结

​ 大家好&#xff0c;我是token&#xff0c;一个热爱.NET的普通人&#xff0c;同样我来自湖南衡阳&#xff0c;再次之前我已经遇到非常多的湖南衡阳的老乡&#xff0c;比如李哥。 ​ 在这里一年中&#xff0c;我的成长也是非常迅速的&#xff0c;每一年的的每一天&#xff0c…

【Linux】深挖进程地址空间

> 作者简介&#xff1a;დ旧言~&#xff0c;目前大二&#xff0c;现在学习Java&#xff0c;c&#xff0c;c&#xff0c;Python等 > 座右铭&#xff1a;松树千年终是朽&#xff0c;槿花一日自为荣。 > 目标&#xff1a;熟悉【Linux】进程地址空间 > 毒鸡汤&#xff…

Thinkphp+vue+mysql学生作业管理系统21j0r

运行环境:phpstudy/wamp/xammp等 开发语言&#xff1a;php 后端框架&#xff1a;Thinkphp5 前端框架&#xff1a;vue.js 服务器&#xff1a;apache 数据库&#xff1a;mysql 数据库工具&#xff1a;Navicat/phpmyadmin 为设计一个安全便捷&#xff0c;并且使用户更好获取本学院…

解决jenkins、git拉取代码仓库失败Please make sure you have the correct access rights

更多ruoyi-nbcio功能请看演示系统 gitee源代码地址 前后端代码&#xff1a; https://gitee.com/nbacheng/ruoyi-nbcio 演示地址&#xff1a;RuoYi-Nbcio后台管理系统 更多nbcio-boot功能请看演示系统 gitee源代码地址 后端代码&#xff1a; https://gitee.com/nbacheng/n…

Redis主从

一、为何需要主从 单节点Redis的并发能力是有上限的&#xff0c;要进一步提高Redis的并发能力&#xff0c;就需要搭建主从集群&#xff0c;实现读写分离 二、如何设置主从 有临时和永久两种模式&#xff1a; 修改配置文件&#xff08;永久生效&#xff09; 在redis.conf中添…