我的编程空间,编程开发者的网络收藏夹
学习永远不晚

python str.format知识点

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

python str.format知识点

在Python3.6.5版本测试通过

语法 str.format(*args, **kwargs)

它通过{}和:来代替%。

"映射”示例:

1.通过位置

In [1]: '{0},{1}'.format('kzc',18)
Out[1]: 'kzc,18'
In [2]: '{},{}'.format('kzc',18)
Out[2]: 'kzc,18'
In [3]: '{1},{0},{1}'.format('kzc',18)
Out[3]: '18,kzc,18'

2.通过关键字参数

 In[5]:'{name},{age}'.format(age=18,name='kzc')
Out[5]: 'kzc,18'

          或字典方式

In [9]: dic={'name':'ytjoh','age':48}
   ...: '{name},{age}'.format(**dic)
Out[9]: 'ytjoh,48'

list和tuple可以通过“打散”成普通参数给函数(使用*),而dict可以打散成关键字参数给函数(**)。所以可以轻松的传个list/tuple/dict给format函数。

3.通过对象属性

In [28]: class Person:
    ...:   def __init__(self,name,age):
    ...:     self.name,self.age = name,age
    ...:   def __str__(self):
    ...:     return 'This guy is {self.name},is {self.age} old'.format(self=self)

In [29]: str(Person('ytjoh',48))
Out[29]: 'This guy is ytjoh,is 48 old'

4.通过下标

In [30]: p=['ytjoh',48]
    ...: '{0[0]},{0[1]}'.format(p)
Out[30]: 'ytjoh,48'
 
In [40]: dic={'name':'ytjoh','age':48}    
    ...: '{d[name]},{d[age]}'.format(d=dic)
Out[40]: 'ytjoh,48'

 

5.用%s和%r替换
In [35]: "repr() shows quotes: {!r}; str() doesn't: {!s}".format('test1', 'test2')
Out[35]: "repr() shows quotes: 'test1'; str() doesn't: test2"

 

格式限定符(format_spec)
它有着丰富的的“格式限定符”(语法是{}中带:号),比如:
填充与对齐
填充常跟对齐一起使用
^、<、>分别是居中、左对齐、右对齐,后面带宽度
:号后面带填充的字符,只能是一个字符,不指定的话默认是用空格填充
比如
In [31]: '{:>8}'.format('ytjoh')
Out[31]: '   ytjoh'

format_spec详解

在这里,我们重点看一下格式描述(format_spec)这一项。

格式描述中含有6个选项,分别是 fill、align、sign、width、precision、type。 它们的位置关系如下:

[[fill]align][sign][#][0][width][,][.precision][type]
fill 可以是任意字符,默认为空格。

align 仅当指定最小宽度时有效。

< 左对齐(默认选项)
> 右对齐
= 仅对数字有效;将填充字符放到符号与数字间,例如 +0001234
^ 居中对齐

sign 仅对数字有效

+ 所有数字均带有符号
- 仅负数带有符号(默认选项)
 即空格;正数前面带空格,负数前面带符号


'#'  只对整数有效

      自动在二进制、八进制、十六进制数值前添加对应的 0b、0o、 0x。

','  自动在每三个数字之间添加 , 分隔符。

width  十进制数字,定义最小宽度。如果未指定,则由内容的宽度来决定。

      如果没有指定对齐方式(align),那么可以在 width 前面添加一个0来实现自动填充0,等价于 fill 设为 0 并且 align 设为 =。

precision  用于确定浮点数的精度,或字符串的最大长度。不可用于整型数值。

type   确定参数类型,默认为 s ,即字符串。

整数输出类型:

b:以二进制格式输出
c:将整数转换成对应的 unicode 字符
d:以十进制输出(默认选项)
o:以八进制输出
x:以十六进制小写输出
X:以十六进制大写输出
n:与 d 相同,但使用当前环境的分隔符来分隔每3位数字

十进制浮点数输出类型:

e:指数标记;使用科学计数法输出,用e来表示指数部分,默认 precision 为6
E:与 e 相同,但使用大写 E 来表示指数部分
f:以定点形式输出数值,默认 precision 为6
F:与 f 相同
g:通用格式;对于给定的 precision p >= 1,取数值的p位有效数字,并以定点或科学计数法输出(默认选项)
G:通用格式;与 g 相同,当数值过大时使用 E 来表示指数部分
n:与 g 相同,但使用当前环境的分隔符来分隔每3位数字
%:百分比标记;使用百分比的形式输出数值,同时设定 f 标记

 

相关函数:format : 内置函数

         用法:format(value[, format_spec])

本函数把值value按format_spec的格式来格式化,然而函数解释format_spec是根据value的类型来决定的,不同的类型有不同的格式化解释。当参数format_spec为空时,本函数等同于函数str(value)的方式。

其实本函数调用时,是把format(value, format_spec)的方式转换为type(value).__format__(format_spec)方式来调用,因此在value类型里就查找方法__format__(),如果找不到此方法,就会返回异常TypeError

 

In [36]: print('aaaa'.__format__('?>20'))
????????????????aaaa

In [36]: 

In [37]: format('aaaa','?>20')
Out[37]: '????????????????aaaa'

 

 

 

 

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

python str.format知识点

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

python str.format知识点

在Python3.6.5版本测试通过语法 str.format(*args, **kwargs)它通过{}和:来代替%。"映射”示例:1.通过位置In [1]: '{0},{1}'.format('kzc',18)Out[1]: 'kzc,
2023-01-30

Python知识点总结

本篇内容介绍了“Python知识点总结”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. 为什么要使用描述符?假想你正在给学校写一个成绩管理
2023-06-16

Python-知识点小计

1.python赋值、浅拷贝、深拷贝区别:https://www.cnblogs.com/xueli/p/4952063.html;2.python的hasattr(),getattr(),settattr()函数使用方法详解:https:
2023-01-30

Python知识点备忘录

文件开头:#!/usr/bin/env python# -*- coding:utf-8 -*-#上面一行适用于3以前的版本当行注释:# 注释多行注释:""" 注释 """  或  '''注释'''输入密码:import getpasspw
2023-01-31

Python——Day3知识点——文件操

一、打开文件文件句柄 = open('文件路径', '模式')打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作。打开文件的模式有:r,只读模式(默认)。w,只写模式。【不可读;不存
2023-01-31

Python入门知识点汇总

Python的设计目标之一是让代码具备高度的可阅读性。它设计时尽量使用其它语言经常使用的标点符号和英文单字,让代码看起来整洁美观。它不像其他的静态语言如C、Pascal那样需要重复书写声明语句,也不像它们的语法那样经常有特殊情况和意外。缩进
2023-01-31

Python常用知识点汇总

1、Set基本数据类型a、set集合,是一个无序且不重复的元素集合class set(object):"""set() -> new empty set objectset(iterable) -> new set objectBuild
2022-06-04

Python基础知识点总结

学了一年多的Python,去年做了一段时间的爬虫项目,近来在做数据分析和机器学习的东西,抽空整理一下以前学的Python基础知识点,有借鉴与总结。具体知识点后续会分段展开深入。   1.到底什么是Python?你可以在回答中与其他技术进行对
2023-01-31

Python基础知识点分析

本篇内容介绍了“Python基础知识点分析”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!Python简介Python的历史1989年圣诞节:
2023-06-02

Python爬虫知识点梳理

做数据分析和任何一门技术一样,都应该带着目标去学习,目标就像一座灯塔,指引你前进,很多人学着学着就学放弃了,很大部分原因是没有明确目标,所以,一定要明确学习目的,在你准备学爬虫前,先问问自己为什么要学习爬虫。有些人是为了一份工作,有些人是为
2023-01-31

JavaScript 知识点

立即执行函数 代码(function () {// ...})(); 创建函数的同时立即执行,没有绑定任何事件,也无需等待任何异步操作function () {} 是一个匿名函数,包围它的一对括号将其转换为一个表达式,紧跟其后的一对括号调用
2023-08-30

MySQL知识点

比较符有:=、>、=、<=、!=、 逻辑符号有:and、or 、not 范围运算符:between … and ..、in、not in 模糊运算:like ‘%_’:%匹配任意字符,_匹配单个字符; 空运算:null、is null、not … is nul
MySQL知识点
2019-04-20
2024-04-02

Python全栈学习_day003知识点

今日大纲:1. 基础数据类型 总览2. int3. bool4. str5. for循环 1. 基础数据类型 总览   int: 用于计算,计数等 str:'这些内容',用户少量数据的存储,便于操作 bool:True, Fal
2023-01-30

Python变量的知识点分析

这篇文章给大家分享的是有关Python变量的知识点分析的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。一、Python变量在大多数语言中,为一个值起一个名字时,把这种行为称为“给变量赋值”或“把值存储在变量中”。不
2023-06-15

Python基本知识点有哪些

本篇内容主要讲解“Python基本知识点有哪些”,感兴趣的朋友不妨来看看。本文介绍的方法操作简单快捷,实用性强。下面就让小编来带大家学习“Python基本知识点有哪些”吧!Python注释python中单行注释采用 # 开头。python
2023-06-29

python端口知识点有哪些

本篇内容介绍了“python端口知识点有哪些”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!1. 什么是端口端口就好一个房子的门,是出入这间房
2023-06-02

python装饰器相关知识点

小编给大家分享一下python装饰器相关知识点,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!一、装饰器1.相关知识点*args:负责将多余的位置实参汇总,赋值给a
2023-06-29

编程热搜

  • Python 学习之路 - Python
    一、安装Python34Windows在Python官网(https://www.python.org/downloads/)下载安装包并安装。Python的默认安装路径是:C:\Python34配置环境变量:【右键计算机】--》【属性】-
    Python 学习之路 - Python
  • chatgpt的中文全称是什么
    chatgpt的中文全称是生成型预训练变换模型。ChatGPT是什么ChatGPT是美国人工智能研究实验室OpenAI开发的一种全新聊天机器人模型,它能够通过学习和理解人类的语言来进行对话,还能根据聊天的上下文进行互动,并协助人类完成一系列
    chatgpt的中文全称是什么
  • C/C++中extern函数使用详解
  • C/C++可变参数的使用
    可变参数的使用方法远远不止以下几种,不过在C,C++中使用可变参数时要小心,在使用printf()等函数时传入的参数个数一定不能比前面的格式化字符串中的’%’符号个数少,否则会产生访问越界,运气不好的话还会导致程序崩溃
    C/C++可变参数的使用
  • css样式文件该放在哪里
  • php中数组下标必须是连续的吗
  • Python 3 教程
    Python 3 教程 Python 的 3.0 版本,常被称为 Python 3000,或简称 Py3k。相对于 Python 的早期版本,这是一个较大的升级。为了不带入过多的累赘,Python 3.0 在设计的时候没有考虑向下兼容。 Python
    Python 3 教程
  • Python pip包管理
    一、前言    在Python中, 安装第三方模块是通过 setuptools 这个工具完成的。 Python有两个封装了 setuptools的包管理工具: easy_install  和  pip , 目前官方推荐使用 pip。    
    Python pip包管理
  • ubuntu如何重新编译内核
  • 改善Java代码之慎用java动态编译

目录