Jak mogę importować zmienne z jednego pliku do drugiego?
przykład: file1
ma zmienne x1
i x2
jak je przekazać file2
?
Jak mogę zaimportować wszystkie zmienne z jednej do drugiej?
from file1 import *
zaimportuje wszystkie obiekty i metody z pliku file1
ImportError: No module named file1
__init__.py
plik? Więcej informacji znajdziesz tutaj .Import
file1
wewnątrzfile2
:Aby zaimportować wszystkie zmienne z pliku1 bez zalewania przestrzeni nazw pliku2, użyj:
import file1 #now use file1.x1, file2.x2, ... to access those variables
Aby zaimportować wszystkie zmienne z pliku1 do przestrzeni nazw pliku2 (niezalecane):
from file1 import * #now use x1, x2..
Z dokumentów :
źródło
import file1
.file1.varX
każdym plikiem.Najlepiej jawnie zaimportować x1 i x2 :
from file1 import x1, x2
Pozwala to uniknąć niepotrzebnych konfliktów przestrzeni nazw ze zmiennymi i funkcjami
file1
podczas pracy w programiefile2
.Ale jeśli naprawdę chcesz, możesz zaimportować wszystkie zmienne:
from file1 import *
źródło
W rzeczywistości importowanie zmiennej z:
from file1 import x1 print(x1)
i
import file1 print(file1.x1)
Chociaż w czasie importu x1 i plik1.x1 mają tę samą wartość, nie są tymi samymi zmiennymi. Na przykład, wywołaj funkcję w pliku1, która modyfikuje x1, a następnie spróbuj wydrukować zmienną z pliku głównego: nie zobaczysz zmodyfikowanej wartości.
źródło
skrypt1.py
title="Hello world"
script2.py to miejsce, w którym używamy zmiennej script1
Metoda 1:
import script1 print(script1.title)
Metoda 2:
from script1 import title print(title)
źródło
Odpowiedź Marca jest poprawna. Właściwie możesz wydrukować adres pamięci dla zmiennych
print(hex(id(libvar))
i możesz zobaczyć, że adresy są różne.# mylib.py libvar = None def lib_method(): global libvar print(hex(id(libvar))) # myapp.py from mylib import libvar, lib_method import mylib lib_method() print(hex(id(libvar))) print(hex(id(mylib.libvar)))
źródło
W
Python
można uzyskać dostęp do zawartości innych plików, takich jak jak gdybysą jakieś biblioteki, w porównaniu do innych języków takich jak Java lub jakichkolwiek języków bazowych oop, to jest naprawdę fajne;
To sprawia, że dostęp do zawartości pliku lub importowanie go w celu przetworzenia lub zrobienia czegokolwiek z nim; I to jest główny powód, dla którego
Python
jest bardzo preferowany język w nauce o danych i uczeniu maszynowym itp .;A to jest zdjęcie
project structure
Gdzie uzyskuję dostęp do zmiennych z
.env file
miejsca, w którymAPI links
znajdują się klucze tajne i.Struktura ogólna:
from <File-Name> import *
źródło
first.py:
a=5
second.py:
import first print(first.a)
Wynik będzie 5.
źródło