python基础format格式化输出

1 print基础

参考:https://www.runoob.com/python/att-string-format.html\

#!/usr/bin/env python3.6
from typing import Dict, Tuple, List, Optional,Union,Callable

# cookie

"""Optional: 可选类型,Optional[X] 等价于 X | None(或 Union[X, None]), 意思是参数可以为空或已经声明的类型"""
def test_func()-> Optional[str]:
    aa:int = 12
    bb:str = "bb"
    cc:list = [1,2,3]
    dd:dict = {"aa":1}
    ee:set = {1,2,3}
    ff:Dict[str,Union[int, str]] = {"aa":11, "bb":"cc"}
    gg:Tuple[str, int, float] = ("xx", 12, 1.0)
    hh:List[str] = ["11","22","33"]
    if isinstance(int, Callable):
        print("{}".format(aa,bb,cc,dd,ee,ff,gg,hh))
    return

占位符 % 和类型码之间的格式语法:
% [格式语法] 类型码(d,s,f等)
格式语法:
- 左对齐
+ 显示正负号
0 补零
宽度
宽度.精度
ex:
“%10d” % 123 # ’ 123’
“%-10d” % 123 # ‘123 ’
“%10s” % “abc” # ’ abc’
“%-5s” % ‘abc’ # ‘abc ’
“%+10d” % 123 # ’ +123’
“%010d” % 123 # ‘0000000123’
“%.2f” % 3.1415926535897932 # ‘3.14’
“%7.2f” % 3.1415926535897932 # ’ 3.14’
str1.center(width[,fill])

1.1 示例代码

#!/usr/bin/env python3.6
name = "zhangsan"
age = 18
print('name is %s ,age is  %s' % (name,age))
print("名字是:%(name)s, 我的年龄是:%(age)3d" %({"name": 'zhangsan', "age": 18}))

#f-Strings
print(f'name is {name} ,age is  {age}')

#位置参数
print("name is {2}, age is {1}.".format( *("zhs",12,"xx")))

#元组和字典的
print("name is {}, age is {}.".format( *("zhs",12,"xx")))
print("name is {name}, age is {age}.".format(**{"name":"zhs","age":12}))

#关键字参数
print("name is {name}, age is {age}.".format(name="zhs",age=12))
print("name is {}, age is {}, he is {boy}".format("zhs", "12",boy="boy" ))


1.2 format进阶

1.2.1

format使用数字和变量名俩种形式,这就是复合字段
复合字段名支持两种操作符
- [] 方括号
- . 点号

#!/usr/bin/env python3.6
list1 = ["zhs", "云昙"]
print("name: {0[0]},addr: {0[1]}".format(list1))
class Stu:
    def __init__(self, name, addr):
        self.name = name
        self.addr = addr

stu = Stu("zhs", "云昙")
# 点号用法, 传递位置参数。
print("我是 {0.name}, 住在{0.addr}".format(stu))
# 当只有一个字段的时候, 就可以省略数字
print("我是 {.name}".format(stu))
# 试一下传递文件对象的属性
with open("readme") as fp:
    print("文件名为: {.name}".format(fp))

"""
"{:^10}\t{:^x1}\t{:^x2}".format(str1,str2,str3)   #x1,x2为int
"{:4}\t{:8}\t{:16}".format(str1,str2,str3)
"""

1.2.2 format() 槽位表示符

{:^5} 剧中 后面带宽度
{:<5} 左对齐 后面带宽度
{:>5} 右对齐 后面带宽度

:<填充><对齐><宽度><.精度><类型>
引导符号用于填充的单个字符< 左对齐
> 右对齐
^ 居中对齐槽的设定输出宽度数字的千位分隔符适用于整数和浮点数浮点数小数部分的精度
或字符串的最大输出长度整数类型b,c,d,o,x,X
浮点数类型e,E,f,%

特殊

格式数字输出描述
{:.2f}3.14159263.14保留小数点后两位
{:+.2f}3.1415926+3.14带符号保留小数点后两位
{:-.2f}-1-1.00带符号保留小数点后两位
{:.0f}2.718283不带小数
{:0>2d}505数字补零 (填充左边, 宽度为2)
{:x<4d}55xxx数字补x (填充右边, 宽度为4)
{:x<4d}1010xx数字补x (填充右边, 宽度为4)
{:,}10000001,000,000以逗号分隔的数字格式
{:.2%}0.2525.00%百分比格式
{:.2e}10000000001.00e+09指数记法
pi = 3.1415926
print("value of pi is {:.2f}.".format(pi)) # 3.14

以上就是“python基础format格式化输出”的全部内容,希望对你有所帮助。

关于Python技术储备

学好 Python 不论是就业还是做副业赚钱都不错,但要学会 Python 还是要有一个学习规划。最后大家分享一份全套的 Python 学习资料,给那些想学习 Python 的小伙伴们一点帮助!

一、Python所有方向的学习路线

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

在这里插入图片描述

二、Python必备开发工具

img

三、Python视频合集

观看零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

img

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

img

五、Python练习题

检查学习结果。

img

六、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

img

最后祝大家天天进步!!

上面这份完整版的Python全套学习资料已经上传至CSDN官方,朋友如果需要可以直接微信扫描下方CSDN官方认证二维码免费领取【保证100%免费】。

  • 22
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值