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-2025 CODEPRJ.COM