Python格式化操作符

2023-01-31 01:01:11 python 操作 格式化

                格式化操作符

·字符串可以使用格式化符号来表示特殊含义

%c     转换成字符

%s      优先str()函数进行字符串转换

%d/%i     转成有符号十进制数 

%o     转成无符号八进制数

%e/%E    转成科学计数法

%f/%F    转成浮点数



wKioL1lQ9bjAbVnDAADlVqjYhRQ422.png



        格式化操作符辅助指令

*    定义宽度或者小数点精度

-    左对齐

+    在正数前面显示加号

<sp>   在正数前面显示空格

#      在八进制前面显示零0,在十六进制前面显示‘0x’或者'0X'

0    显示的数字前面填充0而不是默认的空格


=========================================================================

            脚本部分

wKioL1lRBqmzIq0HAAFr1wb_uGg240.png

===========================================================================================

#!/usr/bin/env python
kuan = 48
newlist = []
while True:
    list = raw_input("input . end >")
    if list == ".":
        break
    newlist.append(list)
print "+%s+" %("*" * kuan)
for i in newlist:
    sp,ex = divmod((kuan - len(i)),2)         #取空格的商和余
    print "+%s%s%s+" %(" " * sp,i," " * (sp+ex)) 

                  #因为不能整除因此需要将余数添加到最后
print "+%s+" %("*" * kuan)

===========================================================================================

#!/usr/bin/env Python
def start_mode():
    kuan=48
    newlist = []
    while True:
        list =raw_input("Plese input , >.< end ")
        if list[-1] == ".":
            break
        sp,ex=divmod(kuan-len(list),2)
        d="+"
        b=sp+ex+len(list)
        list1 = "+%*s"%(b,list)+ "%*s"%(sp+ex,d)
        newlist.append(list1)
    print "+%s+"%("*" * kuan)
    for i in newlist:
        print i
    print "+%s+"%("*" * kuan)
start_mode()


wKiom1lRBqqyCAjzAAAdcDkx6JU353.png


相关文章