inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

핵심만 빠르게, 입문자를 위한 파이썬(Python)과 판다스(Pandas)

파이썬 프로그래밍을 위한 연습문제 솔루션

파이썬 연습문제 6번 관련 문의

74

dpfks2

작성한 질문수 1

0

안녕하세요. 유용한 강의와 연습 문제 감사합니다.

파이썬 연습 문제 6번 관련하여 아래와 같이 2가지 질문 드립니다.

  1. 문제에서 결과로 요구한 값과 코드로 도출하신 값이 달라, (결과는 ID만 도출, 맨 아랫줄의 값은 도메인이 포함된 전체 이메일로 도출)

    아래와 같이 코드를 짜서 결과 값에 맞게 새로 코드를 짜서 도출하긴 했는데, 이런 방법으로 도출을 했을 때 문제가 발생할 여지가 있는지 문의 드립니다. (저는 비전공자로, 코딩에 대한 지식이 전혀 없기 때문에 단순히 확인을 위해 문의 드리는 점 참고 부탁드립니다.)

     

  2. 함수를 정의할 때 쓴 result와, for문에 사용한 result는 같은 값이지만, 마지막에 해당 함수를 출력할 때는 result가 아닌 다른 이름(F )으로 지정 후 출력해도 같은 결과가 나오는 것을 확인하였습니다. 그렇다면 마지막에 함수를 출력하기 위해 쓴 result는 def 구문 안에 있는 result와는 무관하다고 보면 될까요? 다른 이름으로 지정하는 것에 관례적인 문제가 있는지도 궁금합니다.

     

     

email = ['abc132@naver.com', 'wow880@gmail.com', 'hahahahaha@naver.com']

def classifyEmail(email):

result = {"naver" : [], "gmail" : []}

for e in email:

domain = e.split("@")[1]

ID = e.split("@")[0]

 

if domain == "naver.com":

result['naver'].append(ID)

else:

result['gmail'].append(ID)

 

return result

 

F = classifyEmail(email)

print(F)

 

감사합니다.

python pandas

답변 1

0

Jay

classifyEmail 함수 내 정의 된 result 값은 "지역 변수"입니다. 즉, 풀어서 말하자면 저 함수 내에서만 저 변수명이 통한다는 뜻이에요.

 

해당 함수의 리턴 값으로 result를 함수 외부에서 F라는 "전역 변수" 개념으로 받는 것이라고 이해하시면 되겠습니다.

 

아마 이 개념이 헷갈리셨을 것 같은데 구글에 구글에 전역변수, 지역변수 차이라고 검색 또는 ai에게 물어보시면 더 자세한 예시를 보실 수 있을거에요!

감사합니다.

11회 기출 유형(작업형1) 2번 정답

0

2

1

f1 score 질문

0

2

1

10회 작업형 2 인코딩 질의

0

2

1

자동화프롬프트 가져오기 에러

0

3

1

53번 강의에서 갑자기 수업노트가 없어졌습니다.

0

7

2

28:19 roc_auc이유

0

8

2

수강연장문의

0

11

2

노션 사용 권한 없음

0

5

2

전체적인 머신러닝 순서

0

7

1

바로 답변을주셔서.... 하나더 ㅎㅎ

0

7

2

빅분기 실기 유형2질문

0

13

1

QML강의를 더 깊게 듣고 싶은데

1

13

2

섹션 5 부분 exe 파일 과정

0

9

1

Notion에서 이 페이지에 대한 사용 권한 없음

0

11

2

33강 9:51 excercise55.

0

8

1

슬랙에서 메시지 일부 잘림

1

12

2

ID 전처리 이유

0

25

2

데이터제공

0

21

2

divide 함수 축 질문

0

67

1

쥬피터노트북이 안깔려요

0

460

1

pandas 연습문제 4번 관련

0

356

1

Pandas 연습문제 4. apply 활용 질문

0

571

1

마크다운 blank line

0

820

1

내국인 생활인구.csv 다운위치

0

604

1