使用格式化的字串文字來使用變數建立檔案名,例如 f'{variable}.txt'
。格式化的字串文字使我們能夠透過在字串前面加上 f 來在字串中包含表達式和變數。
file_name = 'example' print(f'{file_name}.txt') # ????️ example.txt with open(f'{file_name}.txt', 'w', encoding='utf-8') as f: f.write('first line' + '\n') f.write('second line' + '\n')
我們使用格式化的字串文字來使用變數建立檔案名稱。
格式化字串文字
f-strings
讓我們透過在字串前面加上 f 來在字串中包含表達式。
var1 = 'fql' var2 = 'jiyik' result = f'{var1}{var2}.csv' print(result) # ????️ fqljiyik.csv
file_name = 'example' integer = 1234 print(f'{file_name}_{integer}.txt') # ????️ example_1234.txt with open(f'{file_name}_{integer}.txt', 'w', encoding='utf-8') as f: f.write('first line' + '\n') f.write('second line' + '\n')
格式化的字串文字也使我們能夠在花括號內使用表達式。
這是一個使用 time.time()
方法建構檔名的範例。
import time timestamp = int(time.time()) file_name = 'example' print(f'{file_name}_{timestamp}.txt') # ????️ example_1665817197.txt with open(f'{file_name}_{timestamp}.txt', 'w', encoding='utf-8') as f: f.write('first line' + '\n') f.write('second line' + '\n')
我們使用 time.time()
方法來取得自紀元以來的秒數。
我們也可以在花括號之間直接呼叫函數。
另一種方法是使用加法
運算子。
使用加法
運算子使用變數建立檔案名,例如file_name '.csv'
。加法
運算子可用於將字串與儲存在變數中的字串連接。
import csv file_name = 'example' with open(file_name + '.csv', 'w', newline='', encoding='utf-8') as csvfile: csv_writer = csv.writer(csvfile, delimiter=',', quoting=csv.QUOTE_MINIMAL) csv_writer.writerow(['www', 'jiyik', 'Com'])
當加法
運算子與字串一起使用時,它會將它們連接起來。
print('ab' + 'cd') # ????️ abcd
但是
,當我們使用加法運算子時,我們必須確保左側和右側的值是字串。
如果變數儲存一個整數,請使用 str()
函數將其轉換為字串。
file_name = 123456 result = str(file_name) + '.csv' print(result) # ????️ 123456.csv
這是必要的,因為加法運算子左側和右側的值需要是相容的類型。
使用 f 字串時並非如此,因為它們會自動為我們處理轉換。
我們也可以使用 str.format()
方法使用變數建立檔案名稱。
使用str.format()
方法使用變數建立檔案名,例如'{}.txt '.format(file_name)
。呼叫該方法的字串可以包含使用花括號指定的替換欄位。
file_name = 'example' print('{}.txt'.format(file_name)) # ????️ example.txt with open('{}.txt'.format(file_name), 'w', encoding='utf-8') as f: f.write('first line' + '\n') f.write('second line' + '\n')
str.format()
方法執行字串格式化操作。
first = 'fql' last = 'jiyik' result = "{}_{}.txt".format(first, last) print(result) # ????️ "fql_jiyik.txt"
呼叫此方法的字串可以包含使用花括號 {}
指定的替換欄位。
替換欄位也可以包含關鍵字參數的名稱。
first = 'fql' last = 'jiyik' result = "{f}_{l}.txt".format(f=first, l=last) print(result) # ????️ "fql_jiyik.txt"
我們也可以呼叫函數來指定替換欄位的值。
import time first = 'jiyik' result = "{}_{}.txt".format(first, int(time.time())) print(result) # ????️ "jiyik_1665817957.txt"
請注意
,str.format()
方法在格式化時會自動將整數轉換為字串。
我們選擇哪一種方法是個人喜好問題。我會使用格式化的字串文字,因為我發現它們非常易讀和直觀。
以上是Python中如何使用變數建立檔案名稱的詳細內容。更多資訊請關注PHP中文網其他相關文章!