파이썬 연습문제 6번 관련 문의
75
작성한 질문수 1
안녕하세요. 유용한 강의와 연습 문제 감사합니다.
파이썬 연습 문제 6번 관련하여 아래와 같이 2가지 질문 드립니다.
문제에서 결과로 요구한 값과 코드로 도출하신 값이 달라, (결과는 ID만 도출, 맨 아랫줄의 값은 도메인이 포함된 전체 이메일로 도출)
아래와 같이 코드를 짜서 결과 값에 맞게 새로 코드를 짜서 도출하긴 했는데, 이런 방법으로 도출을 했을 때 문제가 발생할 여지가 있는지 문의 드립니다. (저는 비전공자로, 코딩에 대한 지식이 전혀 없기 때문에 단순히 확인을 위해 문의 드리는 점 참고 부탁드립니다.)
함수를 정의할 때 쓴 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)
감사합니다.
답변 1
0
classifyEmail 함수 내 정의 된 result 값은 "지역 변수"입니다. 즉, 풀어서 말하자면 저 함수 내에서만 저 변수명이 통한다는 뜻이에요.
해당 함수의 리턴 값으로 result를 함수 외부에서 F라는 "전역 변수" 개념으로 받는 것이라고 이해하시면 되겠습니다.
아마 이 개념이 헷갈리셨을 것 같은데 구글에 구글에 전역변수, 지역변수 차이라고 검색 또는 ai에게 물어보시면 더 자세한 예시를 보실 수 있을거에요!
감사합니다.
[긴급요청] 28강 동영상 전체에 오디오가 잘못들어가있습니다.
0
9
1
실제 계좌 잔고 및 테스트중에
1
26
4
Replit UI 변경으로 인한 실습 진행 문의
1
11
1
29강 5:00
0
16
2
설치 및 설정 가이드 노션 자료는 없나요 ?
0
17
2
실기시험 제출관련
0
133
2
6.20 작업형 2 과적합
0
145
3
install까지 설치 하였는데 start 가안됩니다.
1
25
1
8분54초 테이블 내용 문의
0
19
1
코딩팡 장업형2 베이스 라인 인코딩 종류 질문
0
43
2
multi_tool_agent.py 에서 arxiv tool 에러
0
17
1
로지스틱회귀, 회귀
0
47
2
가상 환경과 차이 도커 질문
0
24
1
자료 다운로드 위치 확인 부탁드립니다.
0
14
1
회귀 문제를 풀때 질문입니다.
0
52
1
불균형 처리 후 성능이 더 낮아졌다면,
0
61
2
실기 체험 제2유형 에러 문의
0
60
1
LIGHTGBM 으로 하면 pred값이 소수점 6자리까지 나오는게 맞나요
0
46
2
divide 함수 축 질문
0
69
1
쥬피터노트북이 안깔려요
0
461
1
pandas 연습문제 4번 관련
0
357
1
Pandas 연습문제 4. apply 활용 질문
0
571
1
마크다운 blank line
0
822
1
내국인 생활인구.csv 다운위치
0
604
1





