2014 dxdy logo

Научный форум dxdy

Математика, Физика, Computer Science, Machine Learning, LaTeX, Механика и Техника, Химия,
Биология и Медицина, Экономика и Финансовая Математика, Гуманитарные науки




 
 Python. Почему переменная оказалась вне области видимости?
Сообщение09.11.2020, 22:53 
Добрый вечер! Почему-то переменная оказалась вне области видимости (если я правильно понял).

Я создал файл. Proga.py со следующим кодом.

Используется синтаксис Python
import subprocess
import os
import webbrowser
import subproga

# chrome_path = r'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'

p = subprocess.Popen([chrome_path,r'https://www.google.com/'])
returncode = p.wait()
 


subproga.py - это файл, в той же папке, в котором следующий код.

Используется синтаксис Python

print('Проверка вспомогательной программы')

chrome_path = r'C:\Program Files (x86)\Google\Chrome\Application\chrome.exe'
 


При запуске Proga.py получаю следующую ошибку.

Проверка вспомогательной программыTraceback (most recent call last):
File "C:\Python\proga.py", line 9, in <module>

p = subprocess.Popen([chrome_path,r'https://www.google.com/'])
NameError: name 'chrome_path' is not defined
[Finished in 0.4s]


Разумеется, что если расскоментировать путь к браузеру в основной проге -все открывается хорошо и работает.

Как сделать так, чтобы Proga.py смогла распознавать переменные из subproga.py?

Ведь так удобнее, если файл очень длинный - хранить переменные в подпрограмме.

 
 
 
 Re: Python. Почему переменная оказалась вне области видимости?
Сообщение09.11.2020, 23:00 
Аватара пользователя
Может потому что к ней нужно
Код:
subproga.chrome_path
обращаться из главной функции? А еще можно писать что-то вроде
Код:
from subproga import chrome_path
чтобы непосредственно импортировать в главную функцию переменную.

 
 
 
 Re: Python. Почему переменная оказалась вне области видимости?
Сообщение09.11.2020, 23:27 
Спасибо! Работает и то, и другое)

 
 
 [ Сообщений: 3 ] 


Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group