Python3之編碼、註釋、輸入輸出
阿新 • • 發佈:2019-01-27
一、python的內容編碼
當python程式碼中有中文時,用python2執行會報錯,一般需要在程式碼開頭手動設定編碼格式;python3直譯器中自帶UTF-8編碼器,可以不設定。
指定編碼格式的幾種方法,如下
#coding=utf-8
#coding:utf-8
# -*- coding:utf-8 -*-
二、註釋
#我是單行註釋
'''
我是多行註釋,使用單引號。
我是多行註釋,使用單引號。
我是多行註釋,使用單引號。
'''
"""
我是多行註釋,使用雙引號。
我是多行註釋,使用雙引號。
我是多行註釋,使用雙引號。
"""
#前面指定編碼中的#為指定語法
三、輸出print()
程式設計入門的經典語句
#輸出hello world!
print("hello world!")
執行結果為:
hello world!
稍微複雜一點的輸出:
x = "hello"
y = "XiaoDong"
#輸出(單個變數)
print("輸出結果:%s"%x) #相當於將變數x的值放在%s的位置
#輸出(多個變數)
print("輸出結果:%s,%s"%(x,y)) #按照先後順序,將x,y的值放在%s的位置
#重複輸出20個---,作為分界線
print("---"*20)
#格式化輸出format()
print("{} {}" .format("hello","world")) #按照預設順序,先hello,後world
#format()函式可以接受不限個數引數,位置可以不按順序
print("{1} {0} {1}".format("hello","world"))
#字串型別變數的輸出
print("網站:{name}, 地址:{url}".format(name="百度", url="www.baidu.com"))
#字典型別變數輸出
site = {"name": "百度", "url": "www.baidu.com"}
print("網站:{name}, 地址:{url}".format(**site))
#列表型別變數輸出
my_list = ["百度","www.baidu.com"]
print("網站:{0[0]}, 地址:{0[1]}".format(my_list)) # {0[0]}中左邊的0是必須的
#format()格式化數字
print("{:.2f}".format(3.14159))
#當需要輸出{}大括號時,使用兩個{{}}實現
print("{:+.2f}{{轉義大括號}}".format(3.14159))
執行結果為:
輸出結果:hello
輸出結果:hello,XiaoDong
------------------------------------------------------------
hello world
world hello world
網站:百度, 地址:www.baidu.com
網站:百度, 地址:www.baidu.com
網站:百度, 地址:www.baidu.com
3.14
+3.14{轉義大括號}
對format()函式的解釋
format()是一種格式化字串的函式,它增強了字串格式化的功能。其基本語法是通過 {} 和 : 來代替以前的 % 。同時,format()函式可以接受不限個數引數,位置可以不按順序。
format()函式的使用:
圖片來源於網路 format()函式數字的格式化
格式 舉例 輸出 備註 {:.2f} “{:.2f}”.format(3.14159) ‘3.14’ 保留小數點後兩位 {:+.2f} “{:+.2f}”.format(3.14159) ‘+3.14’ 帶符號保留小數點後兩位 {:+.2f} “{:+.2f}”.format(-3.1) ‘-3.10’ 帶符號保留小數點後兩位 {:.0f} “{:.0f}”.format(3.1) ‘3’ 不帶小數 {:0>2d} “{:0>2d}”.format(5) ‘05’ 補零(填充左邊, 寬度為2) {: >2d} “{: >2d}”.format(5) ’ 5’ 補空格(填充左邊, 寬度為2) {:x<4d} “{:x<4d}”.format(5) ‘5xxx’ 補x(填充右邊, 寬度為4) {:x^5d} “{:x^5d}”.format(5) ‘xx5xx’ 補x(填充兩邊, 寬度為5) {:,} “{:,}”.format(1000000) ‘1,000,000’ 以逗號分隔的數字格式 {:.2%} “{:.2%}”.format(0.25) ‘25.00%’ 百分比格式 {:e} “{:e}”.format(123000000) ‘1.230000e+08’ 標準指數記法 {:.2e} “{:.2e}”.format(100000000) ‘1.00e+08’ 指定小數後位數指數記法 {:.2g} “{:.2g}”.format(123000000) ‘1.2e+08’ 保留2位有效數字
不用format()實現print的格式化輸出:
#進位制
print("十進位制3的二進位制:",bin(3)) #注意這裡不是用%b表示二進位制
print("十進位制11的八進位制: 0o%o"%11)
print("十進位制18的十六進位制: 0x%x"%18)
#浮點數形式輸出
print ("保留小數點後兩位:%.2f"%1.314)
#指數形式輸出
print("標準指數形式:%e"%123456)
print("保留2位小數指數形式:%.2e"%123456)
#有效數字輸出
print("標準有效數字形式:%g"%123456)
print("保留2位有效數字:%.2g"%123456)
#指定佔位符寬度(數字)
print("指定寬度,右對齊:%8d"%12)
print("指定寬度,左對齊:%-8d"%12)
#字串格式化輸出
print("指定寬度,左對齊:%-10s"%"Xiao")
print("指定寬度,右對齊:%10s"%"Xiao")
print("擷取2位字串,指定寬度10,預設右對齊:%10.2s"%"Xiao")
#萬能格式符%r,它會將後面給的引數原樣打印出來,帶有型別資訊
form = "%r %r %r %r"
print(form%(1,"a",True,form))
執行結果為:
十進位制3的二進位制: 0b11
十進位制11的八進位制: 0o13
十進位制18的十六進位制: 0x12
保留小數點後兩位:1.31
標準指數形式:1.234560e+05
保留2位小數指數形式:1.23e+05
標準有效數字形式:123456
保留2位有效數字:1.2e+05
指定寬度,右對齊: 12
指定寬度,左對齊:12
指定寬度,左對齊:Xiao
指定寬度,右對齊: Xiao
擷取2位字串,指定寬度10,預設右對齊: Xi
1 'a' True '%r %r %r %r'
注:文章主要是本人在學習python過程中的一些筆記,便於後期複習,所以某些地方不會很詳細。由於個人水平的限制,若有錯誤的地方,還請指正。程式碼部分是在python3環境下測試。