a.pyKorzystanie zmiennej globalnej jako domyślną parametru
#!c:/Python27/python.exe -u
from connection import Connection
import globals
globals.server_ip = '192.168.0.1'
connection = Connection()
globals.py
#!c:/Python27/python.exe -u
server_ip = '127.0.0.1'
connection.py
import globals
class Connection:
def __init__(self, server_ip = globals.server_ip):
print 'Connection is ' + server_ip + '\n'
spodziewałem I wi Otrzymam wydruk Connection is 192.168.0.1
. Zamiast tego drukowany jest numer Connection is 127.0.0.1
.
ile staram się budować połączenia przez przechodzącą w parametrze w sposób jawny (co nie jest coś, co chcą, a ja niechętnie dokonać zmiany dłużej Połączenie z 0 parametru)
connection = Connection(globals.server_ip)
Dlaczego tak jest? Czy mogę zastosować inne techniki?