Aktywne Wpisy
daeun +400
W tym wpisie wrzucamy wszystkie kobiece RED FLAGI dyskwalifikujące je jako potencjalne partnerki, matki czy małżonki. Ja zaczynam
1. Tatuaże - widzisz taki brudnopis i od razu wiesz że trafił ci sie egzemplarz z defektem, nieprzepracowanymi traumami wymagającymi dlugotrwalej terapii, której w poczatkowym okresie dziecinstwa zabrakło silnych wzorców i autorytetów
#tatuaze #bekazpodludzi #rozowepaski #logikarozowychpaskow #zwiazki #glupiewykopowezabawy #tatuazboners
1. Tatuaże - widzisz taki brudnopis i od razu wiesz że trafił ci sie egzemplarz z defektem, nieprzepracowanymi traumami wymagającymi dlugotrwalej terapii, której w poczatkowym okresie dziecinstwa zabrakło silnych wzorców i autorytetów
#tatuaze #bekazpodludzi #rozowepaski #logikarozowychpaskow #zwiazki #glupiewykopowezabawy #tatuazboners
qew12 +58
Psychiatra zalecił mi badanie testosteronu, gdyż powiedziałem, że nie mam libido i te badania zrobiłem.
I cóż wyszło NIEDOBÓR TESTOSTERONU dla jego its over (╯︵╰,)
#qewnakwadracie #przegryw #depresja
I cóż wyszło NIEDOBÓR TESTOSTERONU dla jego its over (╯︵╰,)
#qewnakwadracie #przegryw #depresja
Funkcję user-input() chcemy wywołać tylko raz, i chcemy zwrócić z niej zmienną name, którą musimy użyć w funkcjach n1() i n2(). Jak to najlepiej zrobić?
Wiem, że można dopisać name = user-input(), ale czy należy tak robić? Bo jak kod będzie dłuższy, dołożymy jakieś importy/eksporty to name będzie zmienną globalną, a tego chyba należy unikać?
def user_input():
....name = input('Give me your name ')
........return name
def n1():
....print(F'Hey, {name}')
def n2():
....print(F'Hello {name}')
name = user_input()
???n1()
n2()
#naukaprogramowania #python
Innym rozwiazaniem, jest po prostu stworzeniu jakiejs glownej funkcji (np. main), ktora bedzie twoja lokalna przestrzenia nazw dla calego programu.
class UserFirstName:
....def get_username(self):
........self.name = input('Give me your name ')
user_fn = UserFirstName()
user_fn.get_username()
def n3():
....print(F'Hey, {user_fn.name}')
def n4():
....print(F'Hello, {user_fn.name}')
n3()
n4()
class User:
def __init__(self):
self._name = None
def set_name(self):
self._name = input("Name: ")
def get_name(self):
print(f"Hello, {self._name}")
def main():
u = User()
u.set_name()
u.get_name()
main()
To możesz zrobić na wiele różnych sposobów oczywiście. Tutaj w globalnej przestrzeni tworzysz sobie klasę i funkcję main(), w której tworzysz sobie obiekty tej klasy. Nawet programując obiektowo gdzieś musisz tworzyć te obiekty, więc to nigdy nie będzie tak, że będziesz mieć zupełnie pustą przestrzeń
Dzięki, ciekawa koncepcja. Tylko, czy w takim przypadku wszystkie definicje korzystające z namenie muszą być w klasie UserFirstName? A co jakby namemusiało być użyte w jakiejś zewnętrznej funkcji?
Przykład dostosowałem trochę do twoich potrzeb, nie wiem na jakim poziomie jesteś i co chcesz z tym kodem zrobić.
Dostęp do wartości name uzyskujesz poprzez metodę get_name. Mógłbyś nawet odwołać się do tego pola bezpośrednio (obiekt.pole), ale dostęp i modyfikacja wartości pól danego obiektu z zewnątrz też nie jest dobrym rozwiązaniem (chociaż
@zgubiles_sie_jelonku: Hmm, tylko jak zwrócić atrybut name z obiektu klasy User np. do funkcji test1() i test2()?
class User:
....def __init__(self):
........self.name = None
....def set_name(self):
........self.name = input("Name: ")
....def get_name(self):
........return self.name
def main():
....u = User()
....u.set_name()
....u.get_name()
main()
def test1():
....print(F'Hello {name}')
def test2():
....print(F'Hey {name}')
test1()
test2()
---------------------------------------------------------------------------------------------------------------------
Zresztą czy nie wystarczyłoby