Utilisez des chaînes littérales formatées pour créer des noms de fichiers à l'aide de variables, telles que f'{variable}.txt'
. Les chaînes littérales formatées nous permettent d'inclure des expressions et des variables dans une chaîne en la faisant précéder de f. 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"
Nous utilisons des chaînes littérales formatées pour créer des noms de fichiers à l'aide de variables.
请注意
,str.format()
rrreee
Chaînes littérales formatées
🎜rrreee🎜🎜 rrreee🎜 Les chaînes littérales formatées nous permettent également d'utiliser des expressions entre accolades. 🎜🎜 Ceci est un exemple d'utilisation de la méthodef-strings
Incluons une expression dans une chaîne en ajoutant f devant elle.time.time()
pour construire un nom de fichier. 🎜rrreee🎜🎜🎜 Nous utilisons la méthodetime.time()
pour obtenir le nombre de secondes depuis l'époque. 🎜🎜Nous pouvons également appeler des fonctions directement entre accolades. 🎜🎜Une autre façon consiste à utiliser l'opérateur additif+
. 🎜Créez un nom de fichier en utilisant une variable avec l'opérateur d'addition
🎜Créez un nom de fichier en utilisant une variable en utilisant l'opérateur d'addition+
, par exemplenom_fichier + '.csv '
. L'opérateur d'addition+
peut être utilisé pour concaténer une chaîne avec une chaîne stockée dans une variable. 🎜rrreee🎜Lorsque l'opérateur d'addition+
est utilisé avec des chaînes, il les concatène. 🎜rrreee🎜Mais
, lorsque nous utilisons l'opérateur d'addition, nous devons nous assurer que les valeurs à gauche et à droite sont des chaînes. 🎜🎜🎜Si la variable stocke un entier, utilisez la fonctionstr()
pour la convertir en chaîne. 🎜rrreee🎜Cela est nécessaire car les valeurs sur les côtés gauche et droit de l'opérateur d'addition doivent être de types compatibles. 🎜🎜Ce n'est pas le cas lors de l'utilisation de f-strings car elles gèrent automatiquement la conversion pour nous. 🎜🎜🎜Nous pouvons également créer des noms de fichiers en utilisant des variables en utilisant la méthodestr.format()
. 🎜Utilisez des variables avec un opérateur d'addition pour créer des noms de fichiers
🎜Utilisez la méthodestr.format()
pour créer des noms de fichiers à l'aide de variables, par exemple'{}.txt' .format(nom_fichier)
. La chaîne sur laquelle cette méthode est appelée peut contenir des champs de remplacement spécifiés à l'aide d'accolades. La méthode 🎜rrreee🎜str.format()
effectue des opérations de formatage de chaîne. 🎜rrreee🎜La chaîne appelant cette méthode peut contenir des champs de remplacement spécifiés à l'aide d'accolades{}
. 🎜🎜Les champs de remplacement peuvent également contenir les noms d'arguments de mots-clés. 🎜rrreee🎜🎜🎜 Nous pouvons également appeler une fonction pour spécifier la valeur du champ de remplacement. 🎜rrreee🎜Veuillez noter
que la méthodestr.format()
convertira automatiquement les entiers en chaînes lors du formatage. 🎜🎜🎜La méthode que nous choisissons est une question de préférence personnelle. J'utiliserais des chaînes littérales formatées car je les trouve très lisibles et intuitives. 🎜
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!