#python #string #list #file
#python #строка #Список #файл
Вопрос:
Я пытаюсь записать определенную информацию о файле в словарь на основе пользовательского списка ввода, содержащего имена проб.
def health(input):
file_location = "./data/health_data/"
dictionary= {}
return(dictionary)
и у меня есть набор файлов в папке health_data, таких как 010.csv 011.csv 012.csv и т.д.
Пользователь может ввести список испытаний лекарств таким образом, чтобы он выглядел как:
input = ["010", "011"]
Итак, что я хочу сделать, это запустить цикл, чтобы каждый элемент списка был объединен с file_location, чтобы он мог выглядеть так:
for i in input:
file_location ="./data/health_data/i.csv"
С чем я борюсь, так это с объединением входных данных в строку расположения файла. Я пытался .join()
и пытался добавить их, но я получаю сообщение об ошибке, что только str может объединяться с str, а не «список»
Как я могу преобразовать список, указанный во входных данных, в строку, чтобы затем объединить его с переменной file_location ?
Ответ №1:
Предполагая, что вы используете Python 3.6 , вы можете использовать f-строку:
for i in input:
file_location = f"./data/health_data/{i}.csv"
do_stuff()
Комментарии:
1. @McMckinson Поскольку вы имеете дело с путями файловой системы, вам следует рассмотреть возможность использования pathlib, если ситуация станет более сложной.