当前位置: 首页 > news >正文

Python系统教程005(字符串的格式化输出)

知识回顾

1、默认情况下,input函数接收的数据是字符串类型。

2、字符串类型的关键词是str。

3、\n和\t都是转义字符,\n用来换行,\t用来留出一段固定长度的空白。

4、type函数能够用来查看变量的数据类型

5、数据类型的转换,举个例子

x_str='3.14'
print(x_str)
y_int=float(x_str)
print(y_int)

第一个是字符型、第二个是浮点类型。

6、有字符串 'a good student',如何取出其中的good字符串

s='a good student'
print(s[2:6])

一、字符串的操作函数

通过索引可以取出字符串当中的某些内容,除了取得字符串中的内容之外,是否还能够对字符串做其它操作呢?         

如果某个字符串s1在另一个字符串s2中出现过,那么我们称s1是s2的子串。

a good student-子串-good

1.字符串操作函数之len

Xiaotuzi 和 Maotouying 谁的名字的拼写长度比较长?

要测量某个字符串的长度,可以使用len函数

Xiaotuzi长度为8

Maotouying长度为10

Maotouying 名字的拼写长度比Xiaotuzi名字的拼写长度长。

2.len函数的使用方式:len(参数)

如果参数是字符串, 那么该函数会返回字符串的长度

练习:

编程实现求出'Xiaotuzi' 和 'Maotouying' 两个名字的长度

name1='Xiaotuzi'
name2='Maotouying'
print(len(name1))
print(len(name2))

3.字符串操作函数之find

  1. I am a good student
  2. 怎么判断这段话中是否含有good这个单词?
  3. 要查找个字符串是否是另一个字符串的子串,可以使用find函数
  4. good 是 I am a good student的一个子串。

(1).find函数的使用方式:字符串.find(参数)

find函数可以查找字符串中是否含有某个子串, 如果有,则返回第一个子串的位置, 否则返回-1,此处的参数可以是要查找的子串。

编程实现判断'good'是否为'I am a good student'的子串

I

a

m

a

g

o

o

d

s

t

u

d

e

n

t

0

1

2

3

4

5

6

7

8

9

10

11

12

13

14

15

16

17

18

第一次出现子串的位置:7

s='I am a good student'
t='good'
print(s.find(t))

(2).I am a good student

怎么判断这段话中是否含有bad这个单词呢?

s='I am a good student'
t='bad'
print(s.find(t))

4.字符串操作函数之replace

I do not like Python

怎么把这段话中的do not替换成really这个单词?

要将字符串中的子串替换成另一个字符串,可以使用replace函数

I do not like Python

替换do not 为 really

I really like Python

替换后的字符串为'I really like Python'。

4.1、replace函数的使用方式: 字符串.replace(参数1,参数2)        

replace函数可以将字符串中的子串替换成另一个字符串,其中参数1是要被替换的子串,参数2是新的要替换子串的字符串。 它的返回值是子串被替换后的新的字符串。

s='I do not like Python'
print(s.replace('do not','really'))

5.字符串操作函数之strip

'     happy day     '

怎么把这段话中的前后空白部分给去掉?

  1. 要去掉一个字符串的前后空白部分,可以使用strip函数
  2. 空白部分 happy day 空白部分
  3. 去掉空白部分        
  4. 替换后的字符串为'happy day'。

5.1、strip函数的使用方式:字符串.strip( )

strip函数可以将字符串中的前后空白部分去掉,此处没有参数。 它的返回值是字符串被去掉前后空白部分后的新的字符串

s=' happy day '
print(s.strip())

二、字符串的格式化输出

如何把变量按照一定的格式输出?

比如 a = 3, 输出:'变量的值是:3'

这就需要用到 格式化符号来实现 格式化输出!

1.什么是格式化?

格式化:按照一定的格式把字符串进行输出

在Python中,可以在字符串中添加格式化符号,使用运算符%来实现格式化输出,常用的格式化符号有:%d、%f 、%s

1.1字符串的格式化输出 - %d

%d是整数格式化符号,可以将字符串中对应的部分替换成整型变量a的值

a=3
print('变量的值是:%d' %a)

格式化符号 一定要和变量 配合使用吗?

答:不一定, 可以不用和变量配合使用

print('I am %d years old'%9)

有时我们需要特定的格式。

%03d、%3d、%-3d, 可以让数字占3个空格。

%03d :如果不足3位,左边用0补齐

%3d :如果不足3位,左边用空格补齐

%-3d:如果不足3位,右边用空格补齐

print('%03d'%6)
print('%3d'%6)
print('%-3d'%6)

2.字符串的格式化输出 - %f

%f是浮点数格式化符号,可以将字符串中对应的部分替换成浮点数

print('pi=%f'%3.1415926)

如果需要特定格式, %.2f 可以保留小数点后2位

%6.2f 可以保留小数点后2位,同时让结果占6个格,左边用空格补齐

print('pi=%.2f'%3.1415926)
print('pi=%6.2f'%3.1415926)

刚刚介绍了保留小数点后若干位输出的一种方法,实际上,还有另外一种方法也可以用来控制小数点位数的输出。

3.字符串的格式化输出 - %s

%s是字符串的格式化符号,可以将字符串中对应的部分替换为字符串

print('I am a %s'%'boy')

4.字符串的格式化输出

字符串中可以使用多个格式化符号

print('My name is %s,and I am %s years old'%('Tom',10))

练习:

1.打印一份乘法表:

print('%4d * %d =%d'%(1,1,1))
print('%4d * %d =%d'%(1,2,2),end='')
print('%4d * %d =%d'%(2,2,4))
print('%4d * %d =%d'%(1,3,3),end='')
print('%4d * %d =%d'%(2,3,6),end='')
print('%4d * %d =%d'%(3,3,9))

练习02:

军队拦截了一条敌军发送的密码信息,内容是:

password = 'C++ is the best computer programming language in the world.'

请对这个字符串做以下处理:

  1. 输出密码的长度
  2. 判断这个字符串是否包含 ‘programming’ 这部分内容,如果有输出它在字符串中第一次出现的位置,如果没有这部分内容,输出-1
  3. 把'C++'这部分内容替换为'Python'
password='C++ is the best computer programming language in the world'
print(len(password))
print(password.find('programming'))
print(password.replace('C++','Python'))

总结:

  1. 字符串常用操作函数
  2. 格式化占位符
  3. 保留小数位数输出

所有代码

x_str='3.14'
print(x_str)
y_int=float(x_str)
print(y_int)
s='a good student'
print(s[2:6])
name1='Xiaotuzi'
name2='Maotouying'
print(len(name1))
print(len(name2))
s='I am a good student'
t='bad'
print(s.find(t))
s='I do not like Python'
print(s.replace('do not','really'))
s=' happy day '
print(s)
print(s.strip())
a=3
print('变量的值是:%d' %a)
print('I am %d years old'%9)
print('%03d'%6)
print('%3d'%6)
print('%-3d'%6)
print('pi=%f'%3.1415926)
print('pi=%.2f'%3.1415926)
print('pi=%6.2f'%3.1415926)
pi='3.1415926'
k=4
print('%.*f' %(k,pi))
print('I am a %s'%'boy')
print('My name is %s,and I am %s years old'%('Tom',10))
print('%4d * %d =%d'%(1,1,1))
print('%4d * %d =%d'%(1,2,2),end='')
print('%4d * %d =%d'%(2,2,4))
print('%4d * %d =%d'%(1,3,3),end='')
print('%4d * %d =%d'%(2,3,6),end='')
print('%4d * %d =%d'%(3,3,9))
password='C++ is the best computer programming language in the world'
print(len(password))
print(password.find('programming'))
print(password.replace('C++','Python'))

“学而不思则罔,思而不学则殆。”
这句话强调了学习与思考相结合的重要性,只有将学习和思考相互配合,才能真正理解知识、掌握学问,避免陷入迷茫或陷入空想。

感谢大家支持!

相关文章:

Python系统教程005(字符串的格式化输出)

知识回顾 1、默认情况下,input函数接收的数据是字符串类型。 2、字符串类型的关键词是str。 3、\n和\t都是转义字符,\n用来换行,\t用来留出一段固定长度的空白。 4、type函数能够用来查看变量的数据类型 5、数据类型的转换,举…...

六款电脑远程控制软件分享,2024最热门软件合集,总有一款适合你!速来看!

想要随时随地控制自己的电脑? 无论你是办公需求,还是要远程协助他人,一款好用的远程控制软件绝对少不了。 2024年最热门的六款远程控制软件已经为你准备好,总有一款适合你,赶快往下看吧! 1. 安企神系统—…...

优质微信群不再难寻!掌握这些技巧就够了!

在当今信息爆炸的时代,微信群已成为人们交流思想、分享知识、建立人脉的重要平台。无论是专业领域的深入探讨,还是兴趣爱好的自由交流,微信群都能为你提供一个即时互动的虚拟空间。然而,面对海量的微信群信息,如何高效…...

python - mysql操作

Python MySQL 操作 1. 背景介绍 常见的Mysql驱动介绍: MySQL-python:也就是MySQLdb。是对C语言操作MySQL数据库的一个简单封装。遵循了Python DB API v2。但是只支持Python2,目前还不支持Python3。mysqlclient:是MySQL-python的…...

基于Springboot+Vue的服装生产管理信息系统设计与实现(含源码数据库)

1.开发环境 开发系统:Windows10/11 架构模式:MVC/前后端分离 JDK版本: Java JDK1.8 开发工具:IDEA 数据库版本: mysql5.7或8.0 数据库可视化工具: navicat 服务器: SpringBoot自带 apache tomcat 主要技术: Java,Springboot,mybatis,mysql,vue 2.视频演示地址 3.功能 在这个…...

75.【C语言】文件操作(2)

承接74.【C语言】文件操作(1)文章 目录 5.详细阐释文件的打开和关闭 1.流 2.标准流 3.文件指针 FILE 两层含义 附:FILE的头文件 4.操作文件的步骤 1.fopen函数 ​编辑 简写的全称查询 输入&输出的含义 2.fclose函数 3.代码示例 补充:绝对路径和相对路径 注意…...

Redis 使用记录

封装调用redis类 import redis from conf.config import RedisConfigclass RedisConfig:redis_json config_data[redis_config]redis_pwd env.get(project_name).get(pwd)host redis_json.get("host")dialog_states_db redis_json.get("dialog_states_db&q…...

IDEA实用小技巧

1. IDEA代码提示忽略大小写 打开设置,点击Editor–>General–>Code Completion ,然后将右侧的Match Case前面的选框去掉勾选。 2. 快速查找接口RestfulToolkitX插件 该插件可以快速查找接口(快捷键为CTRL\) 还会在侧边栏…...

PEI转染试剂对血清的敏感性研究

在细胞生物学和基因工程领域,聚乙烯亚胺(PEI)作为一种常用的转染试剂,广泛应用于基因的递送。然而,PEI转染试剂对血清的敏感性一直是研究的热点问题。转染过程中,血清作为培养基的成分之一,可能…...

手机怎样改网络ip地址?内容详尽实用

随着网络技术的发展,更改手机IP地址已成为一种常见需求。本文将详细介绍如何在不同网络环境下更改手机IP地址,包括移动网络和WiFi网络,以及同时适用于两种网络的方法,内容详尽实用,干货满满。 一、适用于移动网络&…...

使用Pybind11,Python调用C++动态库

最近学习了一下pybind11,使用python来调用C动态库的模式,在某些场景下有用,这里做一个记录。 环境准备 安装python,我这里安装的是3.12版本 下载Pybind11库,这是一个仅包含头文件的轻量级库,使用起来非常…...

提交gitlab

1.gitlab上新建项目 2.git clone url把新项目拉下来 3.git add ./* 把需要提交的文件全部新增 4.git config --global user.email “yetuo.zhuqxsk.local” 身份认证一下 5.git commit -m “asr语音识别-对外服务” 提交 6.git push origin 推送进去 git init git add . git c…...

金慧-综合管理信息系统 LoginBegin.aspx SQL注入复现

0x01 产品描述: 金慧-综合管理信息系统(以下简称“金慧综合管理系统”)是上海金慧软件有限公司基于多年行业系统研发和实施经验,为各类企业量身定制的一套综合性管理解决方案。该系统旨在通过信息化手段,提升企业的管理…...

RHCSA的学习(4)

一、vi编辑器 (1)为什么学vi? 所有的Unix Like 系统都会内建 vi 文本编辑器,其他的文本编辑器则不一定会存在; 很多个别软件的编辑接口都会主动呼叫 vi (例如未来会谈到的 crontab, visudo, edquota 等指令)&#x…...

linux-二进制工具

二进制查看工具: 1、hexdump -n length 只格式化输入文件的前length个字节 -C 输出规范的十六进之和ASCII码 -b 单字节八进制显示 -c 单字节字符显示 -d 双字节十进制显示 -o 双字节八进制显示 -x 双字节十六进制显示 -s 从偏移量开始输出 2、od(octal dump) 用于显示文件内…...

《数据结构》学习系列

系列文章目录 一、绪论 二、线性表、链表 三、堆栈、队列 四、数组 五、字符串 六、树...

沂机管理系统/data/Ajax.aspx接口存在SQL注入漏洞

漏洞描述 沂机管理系统/data/Ajax.aspx接口存在SQL注入漏洞,攻击者可以获取服务器权限 漏洞复现 body"后台管理系统演示版" POC GET /data/Ajax.aspx?methodlog_list&page1&limit20&fkey1&fdate12024-10-0100%3A00%3A00&fdate2…...

JVM 内存模型与垃圾回收过程详解

JVM 内存模型与垃圾回收过程详解 文章目录 JVM 内存模型与垃圾回收过程详解1. JVM内存分区1.1 具体分区1.2 JVM内存分区的必要性 2. 垃圾回收2.1 CMS垃圾回收器2.2 G1垃圾回收器2.3 JVM垃圾回收从新生代到老年代 1. JVM内存分区 1.1 具体分区 Java虚拟机(JVM&#…...

python:PyPDF2 将多个图片转换为pdf,再合并成一个PDF文件

承上一篇:java:pdfbox 3.0 去除扫描版PDF中文本水印 # 导出扫描版PDF文件中每页的图片文件 java -jar pdfbox-app-3.0.3.jar export:images -prefixtest -i your_book.pdf 导出 Writing image: test-1.jpg Writing image: test-2.jpg Writing image: t…...

Python精选200Tips:186-190

针对序列(时间、文本)数据的网络结构 续 P186-- 双向LSTM(Bidirectional Long Short-Term Memory 2005)(1)模型结构说明(2)创新性说明(3)示例代码:IMDB电影评论情感分析 …...

SkyWalking 10.2.0 SWCK 配置过程

SkyWalking 10.2.0 & SWCK 配置过程 skywalking oap-server & ui 使用Docker安装在K8S集群以外,K8S集群中的微服务使用initContainer按命名空间将skywalking-java-agent注入到业务容器中。 SWCK有整套的解决方案,全安装在K8S群集中。 具体可参…...

如何在看板中体现优先级变化

在看板中有效体现优先级变化的关键措施包括:采用颜色或标签标识优先级、设置任务排序规则、使用独立的优先级列或泳道、结合自动化规则同步优先级变化、建立定期的优先级审查流程。其中,设置任务排序规则尤其重要,因为它让看板视觉上直观地体…...

HTML 列表、表格、表单

1 列表标签 作用:布局内容排列整齐的区域 列表分类:无序列表、有序列表、定义列表。 例如: 1.1 无序列表 标签:ul 嵌套 li,ul是无序列表,li是列表条目。 注意事项: ul 标签里面只能包裹 li…...

转转集团旗下首家二手多品类循环仓店“超级转转”开业

6月9日,国内领先的循环经济企业转转集团旗下首家二手多品类循环仓店“超级转转”正式开业。 转转集团创始人兼CEO黄炜、转转循环时尚发起人朱珠、转转集团COO兼红布林CEO胡伟琨、王府井集团副总裁祝捷等出席了开业剪彩仪式。 据「TMT星球」了解,“超级…...

【Java_EE】Spring MVC

目录 Spring Web MVC ​编辑注解 RestController RequestMapping RequestParam RequestParam RequestBody PathVariable RequestPart 参数传递 注意事项 ​编辑参数重命名 RequestParam ​编辑​编辑传递集合 RequestParam 传递JSON数据 ​编辑RequestBody ​…...

基于SpringBoot在线拍卖系统的设计和实现

摘 要 随着社会的发展,社会的各行各业都在利用信息化时代的优势。计算机的优势和普及使得各种信息系统的开发成为必需。 在线拍卖系统,主要的模块包括管理员;首页、个人中心、用户管理、商品类型管理、拍卖商品管理、历史竞拍管理、竞拍订单…...

Razor编程中@Html的方法使用大全

文章目录 1. 基础HTML辅助方法1.1 Html.ActionLink()1.2 Html.RouteLink()1.3 Html.Display() / Html.DisplayFor()1.4 Html.Editor() / Html.EditorFor()1.5 Html.Label() / Html.LabelFor()1.6 Html.TextBox() / Html.TextBoxFor() 2. 表单相关辅助方法2.1 Html.BeginForm() …...

【无标题】湖北理元理律师事务所:债务优化中的生活保障与法律平衡之道

文/法律实务观察组 在债务重组领域,专业机构的核心价值不仅在于减轻债务数字,更在于帮助债务人在履行义务的同时维持基本生活尊严。湖北理元理律师事务所的服务实践表明,合法债务优化需同步实现三重平衡: 法律刚性(债…...

【Post-process】【VBA】ETABS VBA FrameObj.GetNameList and write to EXCEL

ETABS API实战:导出框架元素数据到Excel 在结构工程师的日常工作中,经常需要从ETABS模型中提取框架元素信息进行后续分析。手动复制粘贴不仅耗时,还容易出错。今天我们来用简单的VBA代码实现自动化导出。 🎯 我们要实现什么? 一键点击,就能将ETABS中所有框架元素的基…...

Vue3 PC端 UI组件库我更推荐Naive UI

一、Vue3生态现状与UI库选择的重要性 随着Vue3的稳定发布和Composition API的广泛采用,前端开发者面临着UI组件库的重新选择。一个好的UI库不仅能提升开发效率,还能确保项目的长期可维护性。本文将对比三大主流Vue3 UI库(Naive UI、Element …...