[LG U+ 5기]/Study

[1월][4주차][Python] 4일차 (Jupyter/folium/GUI)

jjanggun0930 2025. 1. 24. 16:46

2025.01.24 금요일

 

오늘도 일찍 나오기 실패해서 급행 타버림. 

다음주엔 무조건 일반열차 타야지...

급행은 타는 것 만으로도 에너지 고갈임

 

------------------------------------------------------------------------

 

바로 정리 시작

FOLIUM

[folium 으로 지도에 마커 찍기]

folium.Marker([lat1, long1],
              popup='여의도 한강공원',
             icon=folium.Icon(color = 'red', icon='heart')).add_to(map_y)
folium.Marker([lat2, long2],
              tooltip='여의도공원',
             icon=folium.Icon('darkblue', icon='home')).add_to(map_y)
map_y

 

  • 지도 그리기부터 실습 진행
  • 솔직히 분석하고 지도 그리는거 엄청 어려웠는데, 물론 조금은 다르겠지만,, 
  • 강사님이 엄청 자세하게? 쉽게? 잘 해주셔서 나름 이해가 잘되고 쉽게 쉽게 넘어가는 느낌 ! 

GUI

[text 라벨 만들기]

#창 생성
root = Tk()
#창의 제목 표시
root.title('장군') 
#창의 크기 결정
root.geometry('400x200')

#라벨 만들기 #라벨 옵션 바꾸기
label1 = Label(root, text='안녕하세요!',bg = 'skyblue', fg = 'darkblue', font = ('Malgun Gothic',20),
              width = 20 ,height = 5,
              anchor = 'se') 
#bg : 배경 / fg : 글씨색 / #font : 맑은고딕,20p / width : 너비 20 / height : 높이 5 / anchor : 정렬 남동
#라벨 위치시키기
label1.pack()
#창 띄우기
root.mainloop()

 

  • pack() 작업 꼭 필수필수 그래야 창에 장착(?) 보이는 거임 ! 
  • pack()은 각자 라벨(위젯)마다 모두 해줘야함. 

쨘...ㅎ


[이미지라벨 만들기]

root = Tk()
root.title('장군') 
root.geometry('400x400')

#이미지 지정
image = PhotoImage(file = 'map.png')

#이미지 라벨사용
img_label = Label(root, image=image)

#라벨 팩킹-보이게 하는 것
img_label.pack()

root.mainloop()

[구구단 창 만들기]_[global]

#랜덤 숫자 변수 2개 만들기
import random
num1,num2 = 0, 0

#버튼 클릭시 실행될 이벤트 작성
def make_question():
    #global : 함수 밖에 있는 변수 불러오기 
    global num1, num2  
    #변수에 임의의 정수 배정
    num1, num2 = random.randint(1,9), random.randint(1,9)
    #동적 변수에 셋팅 
    question.set(str(num1)+'x'+str(num2)+'?')

헷갈리던 전역 변수 정리 !!!

  • global 이 빠지면, 안에서만 생성. 그리고 사라짐 . 즉, global을 사용해서 return 되는 값을 다시 외부에서 사용할 수 있도록 하는 전역  변수

GPT's 정리..ㅎ

global 키워드를 사용하면 함수 내부에서 수정된 변수가 함수 외부에서도 그대로 유지됩니다. 따라서, global은 함수 외부에서 선언된 전역 변수를 함수 내부에서 사용하거나 수정할 수 있도록 해줍니다. 이렇게 하면 함수가 실행된 이후에도 수정된 값을 외부에서 계속 사용할 수 있습니다.

 

global의 역할 요약:

  1. 함수 내부에서 전역 변수를 참조하거나 수정할 수 있게 합니다.
  2. 함수가 종료된 이후에도 수정된 변수 값이 외부에서 유지됩니다.
  3. return을 사용하지 않고도 외부에서 해당 변수에 접근하거나 사용할 수 있도록 합니다.

[오늘의 정리]

- 뭔가 오늘 약간,,,, ft 프론트엔드 맛보기 수업 같은 느낌..ㅎ 

- 재밌긴했지만, 분명 얕게 배워서 재밌을터... 

- 그래도 파이썬 알고리즘 코테 준비할 때 global 아무리 혼자 찾아보고 이해해도 좀 어려웠는데, 강사님이 진짜 한번에 쉽게 설명해주셔서 나름 드디어 시원하게 이해한 느낌이다. 오늘의 가장 큰 수확...!