Измените код, передав путь набора данных, имя набора данных и имя переменной

#python #python-3.x

Вопрос:

У меня есть приведенный ниже код, в котором я передаю только имя переменной. Но я хочу добавить путь к набору данных и имя набора данных вместе с именем переменной. Пожалуйста, найдите приведенный ниже код:

 variable = '~!'.join[str(item) for item in inputlist])
task = {'plaintext': variable}
header = {
       'accesstoken' : accesstoken
     }
resp = request.post('http://URL', json=task , headers = header,verify=False)
resTempList = resp.text.split('~!')
return resTempList
 

Я бы запустил сценарий из командной строки. Также. Я хочу добавить, что. Я хочу передать имя набора данных, путь и список входных данных из командной строки.
(пример: script.py C:/data/text имя набора данных имя переменной) Пожалуйста, дайте мне знать о необходимых изменениях, которые необходимо внести.

Заранее благодарю вас всех.

Комментарии:

1. N. B. это либо ` (не «) для кода, либо отступ, а не то и другое 🙂

Ответ №1:

Попробуйте приведенный ниже код в соответствии с вашими потребностями. добавлены комментарии

 import sys 
variable= " ".join(sys.argv[1:])
task = {'plaintext': variable}
header = {
       'accesstoken' : accesstoken
     }
resp = request.post('http://URL', json=task , headers = header,verify=False)
resTempList = resp.text.split('~!')
return resTempList
 

из командной строки выполните, как показано ниже :

 script.py function_name sample.sas7bdat C:data address
 

переменная будет иметь тип string и будет выглядеть так

 function_name sample.sas7bdat C:data address
 

Комментарии:

1. спасибо вам за ответ. Не могли бы вы, пожалуйста, рассказать мне, как включить это в приведенный выше сценарий??

2. добавьте переменное имя,путь к данным,имя набора данных = sys.argv[1],sys.argv[2],sys.argv[3] в верхней части кода. теперь, когда вы выполняете программу, как указано в комментариях к коду, вы получите переданные аргументы в следующем порядке: variable_name ,data_path, dataset_name. затем сделайте с ними любую операцию, которая вам нужна

3. Я понимаю эту часть. Я смог передать эти три переменные через командную строку. Дело в том, что я новичок в Python и не могу вносить изменения в существующий код. Я хочу добавить три параметра в приведенный выше код (в настоящее время передаю имя переменной).

4. можете ли вы привести пример того, как переменная будет выглядеть после передачи аргументов?

5. Например, я хочу передать: dataset_name = образец.sas7bdat dataset_path = C:dataexample переменное имя = адрес. И я хочу выполнить приведенный выше сценарий из командной строки следующим образом.. >>> script.py образец.sas7bdat C:dataexample адрес