測試環境為 CentOS 8 x86_64 (虛擬機)
print 函式 它是 Python 的內建函式– https://docs.python.org/zh-tw/3.11/library/functions.html#print 使用方式如下.
print(*objects, sep=' ', end='\n', file=sys.stdout, flush=False)
參考文章 – https://openhome.cc/zh-tw/python/basics/io-format-encoding/#print-函式
[root@localhost ~]# python3 Python 3.6.8 (default, Mar 25 2022, 11:15:52) [GCC 8.5.0 20210514 (Red Hat 8.5.0-10)] on linux Type "help", "copyright", "credits" or "license" for more information.
來看幾個範例說明.
-
sep=’ ‘ & end=’\n’
>>> print('Test' , 1, 2, 3, sep=':' , end='\n') Test:1:2:3
說明:
- sep – 分隔字元(預設為空白字元)
- end – 輸出後的最後一個字元(預設值為 ‘\n’)
-
file=sys.stdout
>>> print('Test' , 1, 2, 3, file = open('data.txt', 'w'))
執行結果
[root@localhost ~]# cat data.txt Test 1 2 3
說明:
這邊使用到 open 函數,成功會回傳 file object.open(file, mode='r', buffering=- 1, encoding=None, errors=None, newline=None, closefd=True, opener=None)
有以下模式
- r – Read 唯讀模式.
- w – Write 寫入模式,當檔案不存在時新增檔案,檔案存在時覆寫原檔案.
- x – open for exclusive creation, failing if the file already exists
- a – append 附加模式,新增內容到檔案的後面.
- b – binary mode
- t – text mode (default)
- + – open for updating (reading and writing)
-
str.format(*args, **kwargs)
使用 string 字串物件的 format method 方法.
>>> print('{0:5d} 除以 {1:5d} 是 {2:10.2f}'.format(10, 3, 10 / 3)) 10 除以 3 是 3.33
說明:
format 裡的資料就對應到字串的 {} ,格式是參數詳細說明請參考 – https://docs.python.org/3/library/string.html#formatstrings- {0:5d} 對應到 format(10, 3, 10 / 3) 裡的第 0 個資料 10(數字),並指定格式為 5d (5格空間的十進制數字)
- {1:5d} 對應到 format(10, 3, 10 / 3) 裡的第 1 個資料 3(數字),並指定格式為 5d (5格空間的十進制數字)
- {2:10.2f}’ 對應到 format(10, 3, 10 / 3) 裡的第 2 個資料 10/3(數字),並指定格式為 10.2f (小數點前為 10 格空間,小數點後為 2 格空間)
-
f-string (Python 3.6 以上版本)
字串時以 f 或 F 作為開頭就可以將字串進行格式化,稱為 f-strings.
>>> name = 'Justin' >>> print(f'Hello, {name}') Hello, Justin
{ } 內可以為字串實例 (Instance) 也可以為運算式.
>>> print(f'{n:5d} 除以 {m:5d} 是 {10/3:10.2f}') 10 除以 3 是 3.33
>>> n=10 >>> m=3 >>> print(f'{n:5d} 除以 {m:5d} 是 {n / m:10.2f}') 10 除以 3 是 3.33
{ } 內可以為運算式,所以像是 if else 運算式等函式都可以呼叫.
>>> print(f'Hello, {"Guest" if name == None else name}') Hello, Justin
沒有解決問題,試試搜尋本站其他內容