format()的简单实用 笔记
# 关于format和format_map的使用
# 如果要使用输出的字符串对其不仅仅是可以使用format,还可以使用ljust/rjust/center来处理,输出当然也可以是使用%来进行操作,但是format()属于Python3的特性,所以在这里专门介绍format,其他的暂不打算做笔记
# 使用format进行简单输出
print(format('')) # 可以直接使用print('123'),这里是指为了演示,输出"123"
# 将输出的字符串规定大小20,也叫填充
print(format('', '>20')) # 内容向右靠其,相当于rjust, 输出“ 123”
print(format('', '<20')) # 内容向右靠其,相当于ljust,输出“123 ”
print(format('', '^20')) # 内容向右靠其,相当于ljust,输出“ 123 ”
# 注意:上面例子的format()的'>20'/'<20'/'^20'默认输出的是字符串,及等价于'>20s'/'<20s'/'^20s'
# 如果想输入float类型怎么办?,当然是使用“.nf”
print(format(123.147, '>10.2f')) # 字符串大小为10,输出的为float类型,取两位小数(会四舍五入),输出“ 123.15”
# 如果想填充一些其他字符呢?那在填充前面添加填充内容
print(format('', '=>20')) # 在内容的最左边填充“=”,输出“=================123”,其它同理
# 换种方式?可以
# 输入字符串
s = 'something: {}'
print(s.format('')) # 输出“something: 123”字符串
# 输出float类型
s = 'float: {:.2f}'
print(s.format(12.2222)) # 输出“float: 12.22”
# 那该怎么通过键值来输入呢?看下面
s = 'my name is {name}, age = {age}'
print(s.format(name='namejr', age=22)) # 输出“my name is namejr, age = 22”
# 觉得上面的输入有点麻烦?使用vars()能够找到变量域中的属性进行替换
name = 'namejr'
age = 22
print(s.format_map(vars())) # 输出“my name is namejr, age = 22”
# 难道vars()就这点功能?当然不是,我也是只发现冰山一角,下面也是使用方法:
class use_vars(object):
def __init__(self, name, age):
self.name = name
self.age = age
vars_info = use_vars('namejr', 22)
print(s.format_map(vars(vars_info))) # 输出“my name is namejr, age = 22”
# 难道format和format_map就这么完美? 也不是吧,比如参数缺省就挺惨的,直接抛出错误。不过可以使用__missing__解决
class check_vars(dict):
# 注意:定义为含有__missing__方法的dict对象
def __missing__(self, key):
return '{ '+ key+' is not defined }'
s = 'name is {name1}, age = {age1}'
name1 = 'namejr'
print(s.format_map(check_vars(vars()))) # 输出"name is namejr, age = { age1 is not defined }"
format()的简单实用 笔记的更多相关文章
- SpringMVC学习笔记九:拦截器及拦截器的简单实用
SpringMVC中的interceptor拦截器是非常重要的,它的主要作用就是拦截指定的用户请求,并进行相应的预处理和后处理. 拦截时间点在"处理器映射器根据用户提交的请求映射出所要执行的 ...
- ASP.NET开发常用简单实用的方法
ASP.NET开发简单实用的方法 一.打印和导出 打印和导出EXCEL在目前ASP.NET开发中可以说是必要的,有时候针对不同数据难易程度下,用有效快速的方法是解决办法的有效途径之一. 1.打印 后台 ...
- hook框架frida的安装以及简单实用案例
1.下载地址 https://github.co/frida/frida/releases 2.另外两种安装方法 1.Install from prebuilt binaries This is th ...
- 3.2 配置构建Angular应用——简单的笔记存储应用
本节我们会通过构建一个简单的笔记存储应用(可以载入并修改一组简单的笔记)来学习如何应用Angular的特性.这个应用用到的特性有: 在JSON文件中存储笔记 展示.创建.修改和删除笔记 在笔记中使用M ...
- jQuery的几种简单实用效果
许久未分享博客,或许已生疏. 闲来无事, 分享几个jQuery简单实用的效果案例 不喜勿喷... 1.页面常用的返回顶部 <!DOCTYPE html> <html lang=&qu ...
- Log4j简单学习笔记
log4j结构图: 结构图展现出了log4j的主结构.logger:表示记录器,即数据来源:appender:输出源,即输出方式(如:控制台.文件...)layout:输出布局 Logger机滤器:常 ...
- 经验分享:10个简单实用的 jQuery 代码片段
尽管各种 JavaScirpt 框架和库层出不穷,jQuery 仍然是 Web 前端开发中最常用的工具库.今天,向大家分享我觉得在网站开发中10个简单实用的 jQuery 代码片段. 您可能感兴趣的相 ...
- 简单实用的PHP防注入类实例
这篇文章主要介绍了简单实用的PHP防注入类实例,以两个简单的防注入类为例介绍了PHP防注入的原理与技巧,对网站安全建设来说非常具有实用价值,需要的朋友可以参考下 本文实例讲述了简单实用的PHP防注 ...
- php简单实用的操作文件工具类(创建、移动、复制、删除)
php简单实用好用的文件及文件夹复制函数和工具类(创建.移动.复制.删除) function recurse_copy($src,$dst) { // 原目录,复制到的目录 $dir = opend ...
随机推荐
- css 1) calc() 函数的使用. 2)box-sizing:border-box
calc() 是一个css 函数, 可以实现.计算 ---------------------------- 1. 每个div宽度是25%; 总共4个div. 同时 前三个div 有 border-r ...
- http 请求头部解析
作者:知乎用户链接:https://www.zhihu.com/question/42696895/answer/109035792来源:知乎著作权归作者所有.商业转载请联系作者获得授权,非商业转载请 ...
- django重定向是如何实现的,用的什么状态码?
1,使用HTTPresponseredirect from django,http,import HttpResponseRedirect 2,使用redirct 和reverse 状态码:301和3 ...
- ubantu 安装git
1.安装git并配置 sudo add-apt-repository ppa:git-core/ppa sudo apt-get update sudo apt-get install git 可以使 ...
- python之pandas简单介绍及使用(一)
python之pandas简单介绍及使用(一) 一. Pandas简介1.Python Data Analysis Library 或 pandas 是基于NumPy 的一种工具,该工具是为了解决数据 ...
- 2019-04-01-day023-对象实例的反射实例化
学习方法 学练改管测 听别人说 读 input 自己说 自己写 output 解决语法错误 解决逻辑错误 ##内容回顾 ##继承 多态 封装 property classmethod staticme ...
- 【Python】Excel-4(样式设置)
#练习: #封装一个ExcelUtil的模块(构造函数是excel的路径),里面提供封装的方法: #1 获取某个sheet对象 #2 打印所有sheet名称 #3 给某个sheet的某个单元格写入内容 ...
- git 提交去除每次输账号密码
问题:在使用git代码仓库时,使用git clone 获取代码时,如果使用的是https协议,则在每次push时需要输入账号密码. 相关文档:文档一,文档二 验证了文档一种的方法二可用,记录一下 创建 ...
- c++将数字转换成固定长度的字符串
c++将数字转换成固定长度的字符串 将数字转换为字符串,且设置为固定长度的,不足补零. string num2str(int i) { ]; sprintf(ss,"%04d",i ...
- 关于PHP程序员技术职业生涯规划[转]
看到很多PHP程序员职业规划的文章,都是直接上来就提Linux.PHP.MySQL.Nginx.Redis.Memcache.jQuery这些,然后就直接上手搭环境.做项目,中级就是学习各种PHP框架 ...