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 ...
随机推荐
- MySql:触发器
触发器 一.触发器的定义: 触发器是个特殊的存储过程,不同的是,执行存储过程要使用CALL语句来调用,而触发器的执行不需要使用CALL语句来调用,也不需要手工启动,只要当一个预定的事件发生时,就会被M ...
- ios隐藏头部状态栏级tableview头部控件
- (BOOL)prefersStatusBarHidden { return YES; } self.tableView.separatorColor = [UIColor colorWithRed ...
- 【Python】进程3
#练习: import time from multiprocessing import Pool def run(fn): #fn: 函数参数是数据列表的一个元素 time.sleep(1) ret ...
- 【git学习笔记】
一.查看git的配置文件 1.在项目下,有一个.git的隐藏文件 2.config为git的配置文件 3.查看config :branch表示分支,此配置文件表示当前有两个分支NNU和master,一 ...
- Linux命令--1
之前一直在学习Linux,不过有点一天打鱼两天晒网的意味,现在希望通过写博客的形式,积累更多的知识,也希望可以帮到同在linux坑中的各位小伙伴们~ PS:我的笔记重点在于通俗,很多命令一百度就有,但 ...
- builtroot 添加git 下载方式
1.buildroot/Config.in 配置default git server eg:config xxxx_GIT_SITE string "git site" defau ...
- 何时使用SUM()与SUMX()
概述 SUM()是一个聚合函数.在应用将影响公式的所有过滤器后,它会将您指定的单个列中的所有值相加.SUM()不知道行的存在(它不能逐行求值) - 它所能做的就是在应用过滤器之后将所有内容添加到它所呈 ...
- 推荐系统-07-lambda架构
Lambda 架构 Lambda 架构由Storm的作者Nathan Marz提出,其设计目的在于提供一个能满足大数据系统关键特性的架构,包括高容错.低延迟.可扩展等.其整合离线计算与实时计算,融合不 ...
- ORA-00600: internal error code, arguments: [kole_t2u], [34]
数据库版本10.2.0.5,Alert 日志存在ORA-600报错 ORA-00600: internal error code, arguments: [kole_t2u], [34], [] -- ...
- Deinstall卸载RAC之Oracle软件及数据库+GI集群软件
Deinstall卸载Oracle软件及数据库+GI集群软件 1. 本篇文档应用场景: 需要安装新的ORACLE RAC产品,系统没有重装,需要对原环境中的RAC进行卸载: #本篇文档,在AIX 6. ...