【python基础】format格式化函数的使用
文章目录
- 前言
- 一、format()内容匹配替换
- 1、序号索引
- 2、关键字
- 3、列表索引
- 4、字典索引
- 5、通过类的属性
- 6、通过魔法参数
- 二、format()数字格式化
前言
语法:str.format()
说明:一种格式化字符串的函数。
一、format()内容匹配替换
1、序号索引
在没有参数序号时,参数是按顺序使用的。
主要格式:print(‘{} {}’.format(‘str1’,‘str2’))
print('{} {}'.format('hello','world'))
##输出结果:hello world
可以通过format()参数序号指定参数的使用,参数从0开始编号(与索引编号规律一致)
主要格式:print(‘{0} {1}’.format(‘str1’,‘str2’))
print('{0} {1}'.format('hello','world'))
输出结果:hello world
一个参数可以多次插入
print('{0} {1} {0}'.format('hello','world'))
##输出结果:hello world helloprint('{1} {1} {0}'.format('hello','world'))
##输出结果:world world hello
2、关键字
主要格式:print(‘{关键字索引1} {关键字索引2}’.format(关键字索引1=‘关键字1’,关键字索引2=‘关键字2’))
obj = 'world'
name = 'lily'
print('hello {obj},my name is {name}'.format(obj=obj,name = name))##输出结果:hello world,my name is lily
3、列表索引
主要格式:
- list1=[‘列表值1’,‘列表值2’,‘列表值3’…]
- print(‘{list[列表索引1],list[列表索引2]}’.format(list=list1))
在format格式化时,可以使用*或者**对list进行拆分。
- print(‘{list[列表索引1],list[列表索引2]}’.format(*list1))
list = ['world','lily']
print('hello {names[0]},my name is {names[1]}'.format(names=list))
##输出结果:hello world,my name is lilylist = ['world','lily']
print('hello {0[0]},my name is {0[1]}'.format(list)) #"0"是必须的。
##输出结果:hello world,my name is lilylist = ['world','lily']
print('hello {0},my name is {1}'.format(*list)) #"0"是必须的。
##输出结果:hello world,my name is lily
4、字典索引
主要格式:
- dict1={‘键1’:‘值1’,‘键2’:‘值2’,…}
- print(‘{dict[键1]},{dict[键2]}’.format(dict=dict1))
在format格式化时,可以使用**进行字典拆分。
- print(‘{dict1[键1]},{dict1[键2]}’.format(**dict1))
dict={"obj":"world","name":"lily"}
print('hello {names[obj]},my name is {names[name]}'.format(names=dict))
##输出结果:hello world,my name is lilydict={"obj":"world","name":"lily"}
print('hello {obj},my name is {name}'.format(**dict))
##输出结果:hello world,my name is lily
5、通过类的属性
主要格式:
- 类定义
class 类名字():
类内定义=‘类值’
…
print(‘value.类内定义’.format(value=类名字))
class Value1():obj='lily'name='world'
print('hello {value.obj} , my name is {value.name}'.format(value=Value1))##输出结果:hello world,my name is lily
6、通过魔法参数
args=[',','one']
kwargs={"obj":"world","name":"lily"}
print('hello {obj},my name is {name}'.format(*args,**kwargs))
##输出结果:hello world,my name is lilyprint('hello {obj},my name is {name}'.format(',','one',obj='world',name='lily'))
##输出结果:hello world,my name is lily
魔法参数跟函数中使用的性质是一样的,魔法参数详情可参考文档:魔法参数*args, **kwargs的使用
二、format()数字格式化
| : | <填充> | <对齐> | <符号> | <宽度> | , | <精度> | <类别> |
|---|---|---|---|---|---|---|---|
| 用于填充单个字符 | ^ 表示居中, <表示左对齐, > 表示右对齐 | + 表示在正数前显示 +,负数前显示 -; - 表示正数前不显示,负数前显示; 空格表示正数前加空格,负数前加负号; #对于二进制数、八进制数和十六进制数,使用此参数,各进制数前会分别显示 0b、0o、0x前缀; 反之则不显示前缀。 | 槽的设定, 输出宽度 | 数字的千位分隔符,适用于整数和浮点数 | 浮点数小数部分的精度或字符串的最大输出长度 | 整数类型b,d,o,x , 浮数类型e,E,f,% |
b,d,o,x 分别是二进制,十进制,八进制,十六进制。
e,E,f,% 分别是小写字母e的科学计数法,大写字母E的科学计数法,转换为浮点数(默认小数点后六位),显示百分比(默认小数点后六位)
举例:
- <填充>与<宽度>
print('{:0>2d}'.format(5)) #数字补零,填充左边,宽度为2
##输出结果:05print('{:x<4d}'.format(5)) #数字补x,填充左边,宽度为4
##输出结果:5xxx
- <对齐>与<宽度>
print('{:>10d}'.format(13)) #右对齐 (默认, 宽度为10)
##输出结果: 13print('{:<10d}'.format(13)) #左对齐,宽度为10
##输出结果:13 print('{:^10d}'.format(13)) #中间对齐,宽度为10
##输出结果: 13
- <,>
print('{:,}'.format(1000000)) #以逗号分隔数字格式。
##输出结果:1,000,000
- <.精度> (注意里面有个点号)
print('{:.5}'.format(12.397539)) #保留5位数
##输出结果:12.398
- <符号>与 <类型>
print('{:.2%}'.format(0.25)) #百分比格式
##输出结果:25.00%print('{:.2e}'.format(100000000)) #指数记法
##输出结果:1.00e+08print('{:.2f}'.format(3.1415926)) #保留小数点后两位
##输出结果:3.14print('{:+.2f}'.format(3.1415926)) #带符号保留小数点后两位
##输出结果:+3.14print('{:-.2f}'.format(-1)) #带符号保留小数点后两位
##输出结果:-1.00print('{:.0f}'.format(2.89)) #不带小数,四舍五入
##输出结果:3
print('{:b}'.format(11)) #二进制表示
##输出结果:1011print('{:d}'.format(11)) #十进制表示
##输出结果:11print('{:o}'.format(11)) #八进制表示
##输出结果:13print('{:x}'.format(11)) #十六进制表示
##输出结果:bprint('{:#X}'.format(11))
##输出结果:0XBprint('{:#x}'.format(11))
##输出结果:0xb
参考文档:
https://blog.csdn.net/weixin_69553582/article/details/129830874
相关文章:
【python基础】format格式化函数的使用
文章目录 前言一、format()内容匹配替换1、序号索引2、关键字3、列表索引4、字典索引5、通过类的属性6、通过魔法参数 二、format()数字格式化 前言 语法:str.format() 说明:一种格式化字符串的函数。 一、format()内容匹配替换 1、序号索引 在没有参…...
Java web(三):Http、Tomcat、Servlet
文章目录 一、Java web技术栈二、Http1.1 Http请求数据格式1.2 Http响应数据格式1.3 状态码 二、Tomcat2.1 介绍2.2 web项目结构2.3 IDEA中使用Tomcat 三、Servlet3.1 Servlet使用3.2 Servlet生命周期3.3 Servlet方法和体系结构3.4 urlPattern配置 四、Request4.1 获取请求数据…...
Java实现Hive UDF详细步骤 (Hive 3.x版本,IDEA开发)
这里写目录标题 前言1. 新建项目2.配置maven依赖3.编写代码4.打jar包5.上传服务器6.代码中引用 前言 老版本编写UDF时,需要继承 org.apache.hadoop.hive.ql.exec.UDF类,然后直接实现evaluate()方法即可。 由于公司hive版本比较高(3.x&#x…...
Vue进阶(幺陆肆)Apache的Access.log分析总结
文章目录 一、前言二、常用指令 一、前言 前端项目排错阶段,可借助apache的Access.log进行请求日志查看。 二、常用指令 #查看80端口的tcp连接 #netstat -tan | grep "ESTABLISHED" | grep ":80" | wc -l #当前WEB服务器中联接次数最多的ip地…...
Apple 苹果发布 M3、M3 Pro 和 M3 Max 芯片
本心、输入输出、结果 文章目录 Apple 苹果发布 M3、M3 Pro 和 M3 Max 芯片前言M3、M3 Pro 和 M3 Max 芯片的性能相关资料图M3 Pro规格M3 Max规格弘扬爱国精神 Apple 苹果发布 M3、M3 Pro 和 M3 Max 芯片 编辑:简简单单 Online zuozuo 地址:https://blog…...
Linux常用命令及主流服务部署大全
目录 Linux 系统目录 一、常用操作命令 1、目录操作 2、文件内容操作(查看日志,更改配置文件) 3、压缩和解压缩 4、更改文件权限 二、各服务部署命令 1、增加虚拟内存 2、JDK 2.1 删除系统自带的openjdk 2.2 安装jdk 2.3 删除jd…...
list-watch集群调度
调度约束 Kubernetes 是通过 List-Watch **** 的机制进行每个组件的协作,保持数据同步的,每个组件之间的设计实现了解耦。 用户是通过 kubectl 根据配置文件,向 APIServer 发送命令,在 Node 节点上面建立 Pod 和 Container。…...
深度强化学习中的神经网络部分的作用是什么?一般如何选择合适的神经网络呢?
在深度强化学习中,神经网络部分通常用于实现值函数近似或策略近似,以帮助智能体学习如何在一个环境中做出决策以获得最大的累积奖励。这些神经网络在深度强化学习中扮演着重要的角色,具体作用如下: 1.值函数近似(Valu…...
若依系统的数据导入功能设置
一、后端 Log(title "公交站牌", businessType BusinessType.IMPORT)PreAuthorize("ss.hasPermi(busStop:busStop:import)")PostMapping("/importData")public AjaxResult importData(MultipartFile file, boolean updateSupport) throws Exce…...
vue页面父组件与子组件相互调用方法和传递参数值
vue页面父组件与子组件相互调用方法和传递参数值 父组件页面定义 <el-button type"text" icon"el-icon-refresh" click"refreshClick" slot"label"></el-button> <leftList leftClick"loadModelClick" r…...
vim使用
概述 vi(visual editor)是Unix/Linux编辑器的一种。类似于win中notepad。vim(vi improved)加强版 安装vim: $ yum install vim -y四种模式 命令模式:快速进行复制、粘贴、删除等操作,还可以…...
人工智能基础_机器学习014_BGD批量梯度下降公式更新_进一步推导_SGD随机梯度下降和MBGD小批量梯度下降公式进一步推导---人工智能工作笔记0054
然后我们先来看BGD批量梯度下降,可以看到这里,其实这个公式来源于 梯度下降的公式对吧,其实就是对原始梯度下降公式求偏导以后的梯度下降公式,然后 使用所有样本进行梯度下降得来的,可以看到* 1/n 其实就是求了一个平均数对吧.所有样本的平均数. 然后我们看,我们这里* 1/n那么…...
Android STR研究之一
简介: 先上一段谷歌的介绍 谷歌的网站地址: 电源管理 | Android 开源项目 | Android Open Source Project (google.cn) 术语 STR: STR(Suspend To RAM)的意思是“挂起到内存”,它是一种瞬间开机技术(On Now)。 当系统进入“挂起”状态…...
单链表的详解实现
单链表 结构 单链表结构中有两个数据,一个是存储数据的,还有一个指针指向下一个节点。 该图就是一个简单单链表的结构图。 接口实现 SLNode* CreateNode(SLNDataType x);//申请节点 void SLTprint(SLNode* head);//打印链表 void SLTPushBack(SLNode*…...
抛弃 scp 改用 rsync,让 Linux 下文件传输高效无比
我们都使用过 scp 来传输文件。当传输在中途或甚至在 99% 时被中断时,(每当我想起99%的中断传输时,我的心都很痛);让我们看看如何使用 rsync 来替代 scp,避免这样的不幸。 什么是rsync? Rsync…...
Leetcode 2919. Minimum Increment Operations to Make Array Beautiful
Leetcode 2919. Minimum Increment Operations to Make Array Beautiful 1. 解题思路2. 代码实现 题目链接:2919. Minimum Increment Operations to Make Array Beautiful 1. 解题思路 这一题就是一个动态规划的题目。 思路上来说,就是考察每一个没到…...
关键词搜索亚马逊商品数据接口(标题|主图|SKU|价格|优惠价|掌柜昵称|店铺链接|店铺所在地)
亚马逊提供了API接口来获取商品数据。其中,关键词搜索亚马逊商品接口(item_search-按关键字搜索亚马逊商品接口)可以用于获取按关键字搜索到的商品数据。 通过该接口,您可以使用API Key和API Secret来认证身份,并使用…...
[计算机提升] Windows系统软件:娱乐类
3.3 系统软件:娱乐类 3.3.1 Windows Media Player:dvdplay Windows Media Player是Windows操作系统自带的多媒体播放软件,用于播放和管理电脑中的音频和视频文件。它提供了以下功能: 播放音频和视频文件:Windows Med…...
【Git企业开发】第五节.远程操作
文章目录 前言一、理解分布式版本控制系统二、远程仓库 2.1 新建远程仓库 2.2 克隆远程仓库 2.3 向远程仓库推送 2.4 拉取远程仓库总结 前言 一、理解分布式版本控制系统 我们目前所说的所有内容(工作区,暂存区,版本库等等)&#x…...
idea 配置checkstyle全过程
checkstyle是提高代码质量,检查代码规范的很好用的一款工具,本文简单介绍一下集成的步骤,并提供一份完整的checkstyle的代码规范格式文件,以及常见的格式问题的解决方法。 一,安装 打开idea的文件选项,选择设置&…...
React 第五十五节 Router 中 useAsyncError的使用详解
前言 useAsyncError 是 React Router v6.4 引入的一个钩子,用于处理异步操作(如数据加载)中的错误。下面我将详细解释其用途并提供代码示例。 一、useAsyncError 用途 处理异步错误:捕获在 loader 或 action 中发生的异步错误替…...
CTF show Web 红包题第六弹
提示 1.不是SQL注入 2.需要找关键源码 思路 进入页面发现是一个登录框,很难让人不联想到SQL注入,但提示都说了不是SQL注入,所以就不往这方面想了 先查看一下网页源码,发现一段JavaScript代码,有一个关键类ctfs…...
在 Nginx Stream 层“改写”MQTT ngx_stream_mqtt_filter_module
1、为什么要修改 CONNECT 报文? 多租户隔离:自动为接入设备追加租户前缀,后端按 ClientID 拆分队列。零代码鉴权:将入站用户名替换为 OAuth Access-Token,后端 Broker 统一校验。灰度发布:根据 IP/地理位写…...
[ICLR 2022]How Much Can CLIP Benefit Vision-and-Language Tasks?
论文网址:pdf 英文是纯手打的!论文原文的summarizing and paraphrasing。可能会出现难以避免的拼写错误和语法错误,若有发现欢迎评论指正!文章偏向于笔记,谨慎食用 目录 1. 心得 2. 论文逐段精读 2.1. Abstract 2…...
反射获取方法和属性
Java反射获取方法 在Java中,反射(Reflection)是一种强大的机制,允许程序在运行时访问和操作类的内部属性和方法。通过反射,可以动态地创建对象、调用方法、改变属性值,这在很多Java框架中如Spring和Hiberna…...
C# 类和继承(抽象类)
抽象类 抽象类是指设计为被继承的类。抽象类只能被用作其他类的基类。 不能创建抽象类的实例。抽象类使用abstract修饰符声明。 抽象类可以包含抽象成员或普通的非抽象成员。抽象类的成员可以是抽象成员和普通带 实现的成员的任意组合。抽象类自己可以派生自另一个抽象类。例…...
ardupilot 开发环境eclipse 中import 缺少C++
目录 文章目录 目录摘要1.修复过程摘要 本节主要解决ardupilot 开发环境eclipse 中import 缺少C++,无法导入ardupilot代码,会引起查看不方便的问题。如下图所示 1.修复过程 0.安装ubuntu 软件中自带的eclipse 1.打开eclipse—Help—install new software 2.在 Work with中…...
EtherNet/IP转DeviceNet协议网关详解
一,设备主要功能 疆鸿智能JH-DVN-EIP本产品是自主研发的一款EtherNet/IP从站功能的通讯网关。该产品主要功能是连接DeviceNet总线和EtherNet/IP网络,本网关连接到EtherNet/IP总线中做为从站使用,连接到DeviceNet总线中做为从站使用。 在自动…...
以光量子为例,详解量子获取方式
光量子技术获取量子比特可在室温下进行。该方式有望通过与名为硅光子学(silicon photonics)的光波导(optical waveguide)芯片制造技术和光纤等光通信技术相结合来实现量子计算机。量子力学中,光既是波又是粒子。光子本…...
Fabric V2.5 通用溯源系统——增加图片上传与下载功能
fabric-trace项目在发布一年后,部署量已突破1000次,为支持更多场景,现新增支持图片信息上链,本文对图片上传、下载功能代码进行梳理,包含智能合约、后端、前端部分。 一、智能合约修改 为了增加图片信息上链溯源,需要对底层数据结构进行修改,在此对智能合约中的农产品数…...
