Python 字符串格式化高级用法

字符串格式化: 是在编程过程中,允许编码人员通过特殊的占位符,将相关对应的信息整合或提取的规则字符串。

python字符串格式化字符串的格式化常用的三种方式,分别是使用 %格式化,format方法格式化,fstring格式化。

传统的方式使用 % 作为占位符,输出自身想输出的内容

常用的格式化字符包括 % s :作为替代字符串内容 ,%d 作为替代十进制(常见的1,2,3而已),%f 作为代替浮点数的用法

比较困难难于理解的 % e 作为代替科学计数法内容

举例:

str_format = 'this %s %d a pice code'
#插入的字符必须要和占位符的顺序保持一致
string = str_format %('a',1)
print(string)
其中 %被称为字符串格式化,其中%后面的“x”被称为格式化符,格式化符有很多个 包括(s,r,c,d,f,...)%s可以被称为占位符 

 打印结果:

# 出现这种操作的原因,是为了让表达内容更加灵活,常用在循环中,或者爬虫中
for i in range(100):
    url = f'https://www.gushici.net/t/1/42/index_%d.html'%(i)
    print(url)

 

第二种方式: .format

format 可以接受python任何数据的内容,不必再去区分需要填补的数据是什么类型

Python 中的它可以使用多种方式来替换字符串中的自定义标记。 例如,要把一个字符串中的占位符替换成实际的值,可以使用 format () 方法

使用方法包括:b.format(a)和format(a,b)。

string = 'Learn {name} well and   {figure} travel around the world'.format(figure = 1,name='python')
print(string)

打印结果:

最常用的方式还是通过位置匹配参数:

# 通过format方法补全字符串 Learn python well and go global
string = 'Learn {0} well {2} go {1}'.format('python','global','and')
print(string)

 3 f-string

f-string,亦称为格式化字符串常量(formatted string literals),是Python3.6新引入的一种字符串格式化方法。f-string让字符串的格式化更加简便,本质上f-string不是字符串常量,而是一个可以在运行时运算求值的表达式。

 f -string 基本用法:

name = '马致远'
string = "hello my name is {name}"
print(string)

 f-string 高级用法 : 表达式求值与函数调用

str = f"THEY hAVe {2+5*2} apples".lower()
print(str)

 此段代码通过使用 f-string 方法 计算了大括号内 2+5*2 的值(求职),将字符串模板中的文本内容是大写的部分转换成了小写(函数调用)

a = 3.1415926
#表示字符串模板的固定的长度
str = f"{a:10}"
print(str)
#表示字符串固定模板的长度,以及小数点后面的精度
# width:precison  整数width 为指定宽度,整数precision 表示显示小数点后几位
# str_test = f"{a:width.precision}"
str2 = f"{a:8.3f}"
print(str2)

 在一段代码中 format 变量接受的内容就是字符串模板

information = {"name":"马远远","age":19 ,"Email":"2320761292@qq.com","income":" xianYang"}
format_ = "woshi {nanshen}".format(nanshen = information["name"])
Student = "work location:{0[student]}"

日期格式化:

from datetime import  *
a = datetime.today()
str =  f"{a:%m-%d-%Y}"
print(a)
print(str)

其中 today 是datime 模块中的一个方法用于获取当前时间

Y 表示 年份 m表示 月份  d 表示日,发现了没有我可以将它的输出顺序进行转换

格式化符: 传统就是 % 现在就是 { }

字符串模板: 需求变动的字符串

需要传递的参数: information 中的内容

字符串格式化 ,把字符串当成一个模板,通过传入的参数进行格式化,并且使用大括号‘{}’作为特殊字符代替‘%’。

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

如若内容造成侵权/违法违规/事实不符,请联系我们进行投诉反馈qq邮箱809451989@qq.com,一经查实,立即删除!

相关文章

元数据管理概述

参考公众号文章:数据治理:元数据及元数据管理策略、方法和技术

走进小程序【一】什么是小程序?

文章目录🌟前言🌟发展史🌟什么是[微信小程序](https://developers.weixin.qq.com/miniprogram/dev/framework/)?🌟微信小程序能做什么?🌟小程序发展前景和优势🌟写在最后&#x1f31…

应用层 —— HTTPS协议

目录 1、HTTPS介绍 HTTP 与 HTTPS "加密" 是什么 常见的加密方式 对称加密 非对称加密 数据摘要 && 数据指纹 数字签名 2、HTTPS的工作过程探究 方案1 —— 只使用对称加密(明文传输不可取) 方案2 —— 只使用非对称加密&#xff08…

【探花交友】day02—完善个人信息

目录 1、完善用户信息 1.1、阿里云OSS 1.2、百度人脸识别 1.3、保存用户信息 1.4、上传用户头像 2、用户信息管理 2.1、查询用户资料 2.2、更新用户资料 3、统一token处理 3.1、代码存在的问题 3.2、解决方案 3.3、代码实现 4、统一异常处理 4.1、解决方案 4.2、…

「从零入门推荐系统」14:推荐系统冷启动

作者 | gongyouliu编辑 | gongyouliu作者在第2章《推荐系统基础介绍》中讲述推荐系统面临的挑战时提到冷启动是推荐系统的重要挑战之一。冷启动问题是推荐系统工程实践中非常重要的一个问题,只有解决好冷启动问题,推荐系统的用户体验才会更好。有很多读者…

首届“兴智杯”产业赛收官,文心大模型助推产业创新

由工业和信息化部、科学技术部、深圳市人民政府共同主办,中国信通院等单位承办的首届“兴智杯”全国人工智能创新应用大赛圆满收官。本次大赛受到国家部委、政府机构、科技企业、高校师生等社会各界密切关注。为了进一步激发创新活力,促进人工智能核心技…

ChatGPT 本地部署及搭建

这篇简要说下清华开源项目 ChatGLM 本地部署的详细教程。清华开源项目 ChatGLM-6B 已发布开源版本,这一项目可以直接部署在本地计算机上做测试,无需联网即可体验与 AI 聊天的乐趣。 项目地址:GitHub - THUDM/ChatGLM-6B: ChatGLM-6B&#xf…

创建网络数据集

目的:主要是用来做路径规划。 第一步:加载用作构建网络数据集的道路网数据到arcmap。 第二步:做打断处理。【如果线数据未做过打断处理,需要做这一步。】 有两种方式【1、编辑器里面的高级编辑器的打断相交线功能;2、…

带你玩转Python爬虫(胆小者勿进)千万别做坏事·······

这节课很危险,哈哈哈哈,逗你们玩的 目录 写在前面 1 了解robots.txt 1.1 基础理解 1.2 使用robots.txt 2 Cookie 2.1 两种cookie处理方式 3 常用爬虫方法 3.1 bs4 3.1.1 基础介绍 3.1.2 bs4使用 3.1.2 使用例子 3.2 xpath 3.2.1 xpath基础介…

AD20 PCB后期处理

•DRC检查•位号的调整•装配图制造输出•Gerber(光绘)文件输出•BOM输出•原理图PDF输出•文档规范存档1.电气性能检查 完成PCB的布局布线工作之后,接下来需要进行DRC检查,DRC检查主要是检查整板PCB布局布线与用户设置的规则约束…

最小的k个数(堆排序,快排)

原文&#xff1a; 最小的k个数 - 最小的k个数 - 力扣&#xff08;LeetCode&#xff09; class Solution { public: vector<int> getLeastNumbers(vector<int>& arr, int k) { vector<int> vec(k, 0); if (k 0) { // 排除 0 的情况 …

WT588D软件操作教程二

1、音频输出模式设置 设置音频的输出方式为 DAC(外接功放模式)和 PWM(直接驱动扬声器模式)。 点击“操作”→“选项”,在选项界面里设置音频输出模式。 2、BUSY 设置 设置 BUSY 端( I/O 口 P17)在播放音频时输出电平状态为高或低。 点击“操作”→“选项”,在“忙信号输…

ArcEngine 添加标题

样例 做法【这个很简单&#xff0c;看一下就能懂】 代码 private void 添加标题ToolStripMenuItem_Click(object sender, EventArgs e){{ IGraphicsContainer graphicsContainer mainPageLayoutControl1.PageLayout as IGraphicsContainer;IEnvelope envelope ne…

javaweb实现登录和注册(前端转数据到后端,servlet到mysql验证的案例)

一、 myeclipse的tomcat的使用和驱动的放置 软件版本&#xff1a; 编译软件myeclipse2014 数据库mysql2014 驱动mysql-connector-java-5.1.47 1、myeclipse的tomcat的使用 新建立一个java web 项目&#xff0c;在src下面新建里一个servlet类&#xff08;名叫register&#x…

电子学会2023年3月青少年软件编程(图形化)等级考试试卷(四级)真题,含答案解析

青少年软件编程(图形化)等级考试试卷(四级) 分数:100 题数:24 一、单选题(共10题,共30分) 1. 编写一段程序,从26个英文字母中,随机选出10个加入列表a。空白处应填入的代码是?( )

数字工厂项目实施注意事项有哪些

借助数字工厂管理系统&#xff0c;电子制造企业可以规范和优化整个企业内部业务流程&#xff0c;标准化企业业务数据&#xff0c;实现企业管理信息化;可以更高效的管理及分配企业资源&#xff0c;更高效的运营。基于供应链管理的数字工厂系统&#xff0c;在实施过程中需要注意些…

Windows 使用很久以后,C盘空间不足,怎么办

C:\User\某用户\AppData\Local\Tmp 把这个文件夹下的文件删除掉

写在28岁,回看3年前的自己,庆幸当时入了软件测试这行

为什么会学习软件测试&#xff1f; 已经28岁了&#xff0c;算一下快过去3年了&#xff0c;刚毕业那会工作了一年&#xff0c;因为自己当时很迷茫&#xff08;觉得自己挺废的&#xff09;&#xff0c;所以就没去工作就一直在家&#xff0c;家里固定每个月给点生活费&#xff0c…

SimpleDataFormat.parse转换日期错误-多线程

最近使用线程池批量操作数据&#xff0c;中间用到了SimpleDataFormat转换时间&#xff0c;部分数据转换不正确&#xff0c;甚至2023年转成了7223年&#xff0c;原因是SimpleDataFormat不是线程安全的类&#xff0c;所以可以加锁进行处理 我是将sdf作为参数放入多线程&#xff0…