Python字符串格式化输出


1、当你在设计程序的时候,用户输入个人信息后,要求打印成以下格式:

------------- info of cc ------------ name:cc sex:man age:21 tel:13200660088
--------------End------------------------

  你该怎么做呢?这个时候我们学习的字符串拼接就很难实现了,这个时候就得用到字符串里

一个常用的方法——格式化输出。

2、何谓格式化输出呢?

 Python 字符串格式化使用 "字符 %格式1 %格式2 字符"%(变量1,变量2),%格式表示接受变量的类型。 

 字符串格式化时百分号后面有不同的格式符号,代表要转换的不同类型,具体的表示符号如下面所示。

  格式符号     表示类型

    %s       字符串

    %d/%i      十进制整数

    %u      十进制整数

    %o      八进制整数

    %x/%X      十六进制整数         

    %e/%E    科学计数

    %f/%F     浮点数

    %%       输出%

3、简单的用法如下

s = 'cc'
print('%s'%s)    # cc
 d = 2333
print('%d'%d)   #2333
 f = 18.66
print('%f'%f)    # 18.660000 
 o = 16
print('%o'%o,'%x'%o) # 十进制分别转8进制和16进制 20 10
 e = 10000000000
print('%e'%e)        # 转为科学计数法表示

4、现在进入我们的主题,开头的那种怎么表示呢?

  把要打印的格式先准备好, 由于里面的 一些信息是需要用户输入的,你没办法预设知道,因此可以先放置个占位符,再把字符串里的占位符与外部的变量做个映射关系。

  主要有以下几种方式,至于使用看个人喜好吧!之前忘记说了,每次敲代码前开头加上 # -*-coding:utf-8-*-

声明编码格式,非常重要,至于原因会在后面编码转换的时候详说,现在记住就好了。 

  方式一(最原始的):

#!/usr/bin/env python #-*- coding:utf-8 -*- # write by congcong
 Name = input('name:') Sex = input("sex:") Age = int(input("age:")) Tel = int(input("tel:")) # the first way

print("----------info of ",Name,'------------') print("姓名:",Name) print("性别:",Sex) print("年龄:",Age) print("电话:",Tel) print("----------End------------")

方式二:

#!/usr/bin/env python #-*- coding:utf-8 -*- # write by congcong
 Name = input('name:') Sex = input("sex:") Age = int(input("age:")) # int()类型转换,input接收的所有输入默认都是字符串格式!
Tel = int(input("tel:"))

# the second way


info = '''
-------------info of %s -----------------
姓名: %s
性别: %s
年龄:
%d
电话: %d
--------------End------------------------ 

'''
%(Name,name,Sex,Age,Tel) # 必须一一对应

print(info)

方式三(用得最多):

#!/usr/bin/env python #-*- coding:utf-8 -*- # write by congcong
 Name = input('name:') Sex = input("sex:") Age = int(input("age:")) # int()类型转换,input接收的所有输入默认都是字符串格式! Tel = int(input("tel:")) #the third way(重要,用得最多)
info = ''' ------------- info of {_name} ------------ name:{_name} sex:{_sex} age:{_age} tel:{_tel} --------------End------------------------ '''.format(_name = Name, _age = Age, _sex = Sex, _tel = Tel) print(info)

 

 

 

    

 

 

  


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2026 CODEPRJ.COM