55,000원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
리스트 컴프리헨션에 관한 질문입니다
강의에서 Classes = namedtuple('Classes', ['rank', 'number']) 다음과 같이 네임드 튜플을 선언하고, numbers = [str(n) for n in range(1, 21)] ranks = 'A B C D'.split() 이렇게 그룹 리스트를 선언한 후 students = [Classes(rank, number) for rank in ranks for number in numbers] 리스트 컴프리헨션을 사용하셨는데요, [](대괄호) 내부에서의 반복문을 사용함으로써 Classes(A, 1)부터 시작되는 객체를 생성하는 과정이라고 이해하면 되는건가요? 그리고 리스트 컴프리헨션을 사용한 이유는 오직 반복문을 사용하기 위함인건지 궁금합니다.. + 또 궁금한게 있습니다... students2 = [Classes(rank, number) for rank in 'A B C D'.split() for number in [str(n) for n in range(1, 21)]] 다음과 같이 코드를 작성하셨는데요, for문을 중첩 for 반복문과 비슷하게 작성하셨는데 리스트 컴프리헨션에서는 for이 한 줄로 작성되지 않아도 무방한 것인지 궁금합니다!! 질문이 너무 많은 것 같네요... 강의 잘 듣고 있습니다 감사합니다 ㅎㅎ
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
첫번째 부분에서 질문입니다
아나콘다로 코딩 중인데 print(__builtins__.__dict.__)가 실행이 안되네요 dict object has no attribute '__dicts__'라 뜨는데 뭐가 문제인가요....?
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
메소드의 호출에 관한 질문입니다
안녕하세요 강의에서 만든 매직 메소드에서 호출에 관한 질문입니다. __str__ 메소드의 호출에 대해서 궁금한 점이 있는데요, class Fruit: def __init__(self, name, price): self.name = name self.price = price def __str__(self): return 'Fruit Class Info : {} , {}'.format(self.name, self.price) # 인스턴스 생성 s1 = Fruit('Orange', 7500) s2 = Fruit('Banana', 3000) 다음과 같이 인스턴스를 생성한 후, print(s1)을 출력하니 __str__메소드가 호출된 것을 확인할 수 있었습니다. 인자들이 할당되는 과정을 생각해보면, print(s1)은 결국 print(s1.__str__())과 같은 과정이라고 생각이 되는데요, print(str(s1)) 이 print(s1.__str__())과 같은 원리인 것은 이해가 가지만, print(s1)만 호출했는데도 __str__메소드가 호출되는 이유가 무엇인가요??
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
futures 이해 및 GIL 에 대한 질문
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. problem ) GIL -> 두 개 이상의 스레드가 동시에 실행 될 때 GIL 에 의해서 단일 스레드만 실행이됨. 멀티 스레드의 경우 문맥교환에 필요한 것을 고려하면 오히려 단일 스레드보다 성능이 떨어짐. solution) concurrnet.futures 모듈을 사용해서 해결하고자함 . processpoolexecutor 과 threadpoolexecutor 두 클래스를 사용해서 해결하는데 멀티스레드로 처리하느냐 혹은 멀티 프로세스를 처리하느냐의 차이인 것인데 q1 )멀티스레드로 처리하면 GIL에 결국 걸려야 하는 것 아닌가요 ??(GIL 에 걸리지 않게 멀티스레드를 사용하게 한 것이라면 어떻게 그렇게 만든 것 인지 궁금합니다) q2)GIL 때문에 멀티스레드의 효율이 떨어지는 것인지 아니면 멀티스레드 자체의 효율이 별로인 것인지 궁금합니다. 다른 언어는 잘 몰라서 그러는데 다른언어에서 GIL 이 없다고 가정하면 멀티스레드를 자주 사용하나요 ? 혹시나 잘못 이해한 부분이 있으면 알려주세요 ! 답변감사합니다. !
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
첫 부분 질문입니다.
#기본형 이 부분에서 int,float만 적어놓으셨는데 double,char 같은 걸 입력하니 오류가 뜨네요.. 꼭 int,float만 되는건가요?
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
왜 list에 append를 하는 것은 쓰기로 간주되지 않는 것인가요?
"왜 list에 append를 하는 것은 '쓰기'로 간주되지 않는 것인가요?" ------------------------------------------------------- 리스트일 때는 error가 발생하지 않고, 일반변수일 때는 error가 발생하는 이유가 도대체 무엇인가요? 정말로 존경을 담아서 말씀드리건대 입문강의에서 지금 이 강의까지 매번 감동의 물결 속에서 감사히 들어왔습니다만, 이번 강의에서 이 의문과 관련된 부분은 도무지 이해가 가지를 않습니다. 너무 답답해서 처음으로 질문 올립니다. 2분 36초에서 "위에거를 참조하지 못하고 있는 거예요"라고 하시는데, 그렇다면 클로저 심화(3-1)에서 나온 closure_ex1() 함수에서는 어떻게 내부함수 averager 안에서 series.append(v)를 할 때 '위에거(series = [])'를 참조할 수 있는 것인가요? 바꿔 말하면,"왜 closure_ex1() 함수에서는, 내부함수 averager에서 nonlocal series 라고 선언하지 않았음에도 불구하고, error 없이 정상적으로 실행되는 것인가요?" 클로져 심화(4-2) 질의응답란에는 "local에서는 nonlocal의 변수를 '읽기'만 가능하고 '쓰기'는 불가능하다"고 설명해주고 계신데요, (nonlocal에 있는) list에 (local에서) append를 하는 것은 '쓰기'가 아닌가요? 이 이슈와 관련하여 질문하는 모든 사람들이 scope의 개념은 선생님에게 설명을 듣고 또 충분히 이해하고 있으나, list에 append를 하는 것이 '쓰기'로 간주되지 않는 이유에 대해서는 설명을 듣지 못하고 있습니다. 그래서 다시금 한번 더 여쭤보자면,"왜 list에 append를 하는 것은 '쓰기'로 간주되지 않는 것인가요?"이것까지 답해주시다보면 너무 깊이 들어가기 때문에, 배려 차원에서 의도적으로 말씀을 안 해주시는 것인가요? 혹시, 이것은a = [0] -> id(a) -> a.append(3) -> id(a)b = 3 -> id(b) -> b += 3 -> id(b)a의 id는 변하지 않고, b의 id는 변화하는 것과 관련이 있는 것인가요?
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
제너레이터 질문 있습니다.
제너레이터도 이터레이터라고 알고있는데 , 제너레이터 생성후 dir 을 이용해서 보니 __next__ 가 존재하지 않는 것 같아서 질문드립니다. (이터레이터는 __next__ 가 존재하는 것으로 알고있습니다. )어느부분에서 이해를 못한건지 잘 모르겠습니다! 혹시 next 라는 메소드 없이 yield 를 사용해서 모두 처리 가능하기 때문에 yield 안에 next 가 들어가있다?. 라고 이해하면 될까요 ? 답변감사합니다
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
클래스 함수 호출할 때 오류가 생깁니다
부모 코드 class EfficientNet(nn.Module): ... 중략 @classmethod def from_pretrained(cls, model_name, advprop=False, num_classes=1000, in_channels=3): model = cls.from_name(model_name, override_params={'num_classes': num_classes}) load_pretrained_weights(model, model_name, load_fc=(num_classes == 1000), advprop=advprop) if in_channels != 3: Conv2d = get_same_padding_conv2d(image_size = model._global_params.image_size) out_channels = round_filters(32, model._global_params) model._conv_stem = Conv2d(in_channels, out_channels, kernel_size=3, stride=2, bias=False) return model 자식 코드 class EfficientNetModified(EfficientNet): # def __init__(self): # super().__init__() 코드는 위와 같습니다 제가 자식 코드에 있는 EfficientNetModified 객체를 선언한 후 부모에 있는 (자식에서 상속 받아 수정하지 않음 X) from_pretrained 함수를 호출하는데, 호출이 되지 않다가 자식 코드에서 주석을 친 부분을 주석을 치니까 되는데, 어떠한 이유에서 그런 것인가요?
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
series nonlocal 안해도 되는 이유
def closure_ex1():# Free variable # 클로저 영역 series = []def averager(v):# 여기는 nonlocal 안해도 되는 이유가 뭔가요?series.append(v)print(f'inner >>> {series} / {len(series)}')return sum(series) / len(series)return averageravg_closure1 = closure_ex1()print(avg_closure1(10))print(avg_closure1(20))print(avg_closure1(30)) averager 함수에서 series에 nonlocal 왜 안적어도 되는 건가요?
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
lambda, callable을 가르쳐주신 이유
수업 중에 lambda 함수와 callable은 왜 가르쳐 주신건가요? 일급함수랑 어떤 관계가 있는건가요?
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
선생님 중첩함수 질문합니다 ㅠ
선생님 이 함수에서 print(num)은 왜출력이 안되는가요?? 제가 생각하기로는 100, in fuction, 200 이 출력되야 하는데요 ㅠ
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
[질문] 리스트형 & 튜플 id 값 변화
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 시퀀스 강의 에서 질문드립니다. 리스트형과 튜플을 변동 시켰을때 ID 값을 변화에 대해서 말해주셨는데요. 1. 리스트 M : [15, 20, 25] 2. 리스트 M *2 : [15, 20, 25, 15, 20, 25] 3. 리스트 M *= 2 : [15, 20, 25, 15, 20, 25, 15, 20, 25, 15, 20, 25] 리스트 2와 3 이 같은 ID를 가진것은 확인을 하였는데요. 리스트 1 은 왜 리스트 2 or 리스트 3 과 다른 id를 가진걸까요? 똑같이 복사된것 이라 같은 id를 가져야할것 같은데요.. 1번 M 은 왜 나머지와 다른 걸까요? l = (15, 20, 25) m = [15, 20, 25] print(l, id(l)) print(m, id(m)) l = l * 2 m = m * 2 print(id(l)) print(id(m)) l *= 2 m *= 2 print(id(l)) print(id(m))
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
선생님 함수 질문합니다 ㅠ
수업하다가 혼자 함수 만들어 봤는데 출력이 잘안되네요 ㅠㅠ 어떻게 수정해야 값이 출력될까요??
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
클래스 메소드에서 cls를 꼭 활용해야 하나요?
아래 사진에 대해 답변을 바랍니다. class method 내에서 cls.price_per _raise 대신 Car.price_per_raise를 쓰면 어떤 문제가 발생하나요?
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
__del__과 del
클래스 내에서 정의하기를, def __del__(self): Car.car_count -= 1 이후에 파이썬에서 실행시키기를, del car2 print(car1.car_count) print(Car.car_count) 제 질문은, 우리가 정의한 것은 __del__인데, del을 시행할 때 왜 __del__이 시행되는 가 입니다.
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
클래서& 메소드 심화 (1-2) 강의 문의 드립니다.
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 강의 내용중에서 [] 로 안에 넣은 코드를 딕셔너리로 pop 으로 지울수 있다고 하셨습니다. pop 이나 key 값을 가져올수 없어서 확인하니 list 타입이라고 나왔습니다. 강의 내용하고 다른거 같은데요 딕셔너리 형태를 리스트로 묶었다고 이해하면 될까요? 그러면 key 값을 가져올때는 리스트 안에 요소를 가져와서 key 를 가져오는게 맞는 방법일런지요? car_dicts = [ {'car_compayn': 'ferrai', 'car_detail' : {'color':'white','horsepower':400}}, {'car_compayn': 'ferrai', 'car_detail' : {'color':'white','horsepower':400}} ]
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
가상환경 만들고 코드 실행 후 아웃풋 출력이 안되고 로딩만 계속 됩니다.
python extension loading.. 만 계속 나오는데 어떻게 해결해야 하나요? ㅜ
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
python 가상환경에서 버젼 설정하는 방법?!
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보ㅇ요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 안녕하세요. 파이썬 가상환경 강의를 듣고 질문이 있습니다. python -m venv [Name] -- 이 명령어로 가상환경을 만들어 파이썬을 사용한다고 배웠는데요. 이 때 파이썬 버젼을 임의로 설치할수 있는 방법이 있을까요? 위 명령어 대로 라면 현재 환경 변수로 지정된 파이썬 버젼 이 설치 될것 같은데요. 특정한 버젼을 설치하고 싶을때 어떻게 하면 좋을까요?!!
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
vs 스튜디오에서 print(d) 함수 도움말이 안나오는경우는 어떻게 해야하나요?
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 함수 도움말이 안나와용
- 미해결우리를 위한 프로그래밍 : 파이썬 중급 (Inflearn Original)
가상환경을 만드는것 까지는 문제가 없는데..
- 학습 관련 질문을 남겨주세요. 상세히 작성하면 더 좋아요! - 먼저 유사한 질문이 있었는지 검색해보세요. - 서로 예의를 지키며 존중하는 문화를 만들어가요. - 잠깐! 인프런 서비스 운영 관련 문의는 1:1 문의하기를 이용해주세요. 가상환경을 만드는 것 까지는 문제가 없습니다. 다만 vs code 와 atom 둘다 가상환경에서 실행하려고하면 오류가 납니다. 파이썬은 3.9.1 사용하고있는데 계속해서 ctrl + f5 할때 결과값이 나오지 않고 계속해서 대기중이고 atom 에서 실행시에도 마찬가지로 오류가 나옵니다. 어떻게 해결해야 하나요 선생님? 답변감사합니다.