[TIL] 파이썬의 인수 전달 방식 이해하기
·
TIL
1. 기본 개념파이썬에서는 함수에 인수를 전달할 때 "객체 참조에 의한 전달(call by object reference)" 방식을 사용합니다. 이는 실제 객체의 참조(주소)가 전달된다는 의미입니다.2. 비유로 이해하기이것은 마치 책의 위치를 알려주는 것과 같습니다:함수에 인수를 전달하는 것 = 책의 위치를 알려주는 것실제 객체 = 책참조 = 책의 위치3. Immutable(변경 불가능한) 객체와 Mutable(변경 가능한) 객체의 차이3-1. Immutable 객체 (예: 정수, 문자열, 튜플)입력: def change_number(n): n += 10 print("함수 내부:", n)x = 5change_number(x)print("함수 외부:", x) 출력 :함수 내부: 15함수 외부: ..
[TIL] 자료 구조와 배열 (Python) 3편 - 인덱스싱, 슬라이싱
·
TIL
1. 인덱싱인덱싱은 리스트나 튜플 같은 순서가 있는 데이터에서 특정 위치의 항목을 가져오는 방법입니다. 인덱스식을 사용하는 방법은 리스트와 튜플이 동일합니다.  기본적인 인덱싱:과일 = ["사과", "바나나", "오렌지"]print(과일[0]) # 사과print(과일[1]) # 바나나print(과일[2]) # 오렌지 인덱스는 0부터 시작합니다. 첫 번째 항목의 인덱스는 0, 두 번째 항목의 인덱스는 1, 이런 식으로 계속됩니다.음수 인덱싱:과일 = ["사과", "바나나", "오렌지"]print(과일[-1]) # 오렌지 (마지막 항목)print(과일[-2]) # 바나나 (뒤에서 두 번째 항목)파이썬에서는 음수 인덱스를 사용하여 뒤에서부터 항목을 선택할 수 있습니다. 리스트 수정하기:과일[1] = ..
[TIL] 자료 구조와 배열 (Python) 2편 - 리스트와 튜플
·
TIL
1. 파이썬에서는 배열을 리스트(list)와 튜플(tuple)로 구현할 수 있습니다. 리스트와 튜플은 '데이터 컨테이너(Data Container)' 또는 '데이터 구조(Data Structure)'라고 불립니다. 데이터 컨테이너:데이터 컨테이너는 여러 데이터 항목을 하나의 단위로 묶어서 저장하고 관리할 수 있게 해주는 객체를 말합니다. 마치 여러 물건을 담을 수 있는 상자와 같은 역할을 합니다. (ex. 연필통은 연필, 지우개, 자 등 여러 문구용품을 담는 컨테이너예요.)  데이터 구조:데이터 구조는 데이터를 효율적으로 저장, 관리, 사용할 수 있도록 구조화한 방식을 말합니다. 데이터 구조는 데이터 컨테이너의 더 넓은 개념이라고 볼 수 있습니다. 쉽게 말해 데이터 구조는 데이터를 정리하는 방법이에요. ..
[TIL] 자료 구조와 배열 (Python) 1편 - 기본 개념
·
TIL
1. 자료구조자료 구조는 컴퓨터에서 정보를 정리하고 저장하는 방법입니다. 마치 우리가 물건을 정리할 때 서랍장, 책장, 옷장 등을 사용하는 것처럼, 컴퓨터도 정보를 효율적으로 관리하기 위해 여러 가지 방법을 사용합니다. 2. 배열 (array) 배열은 가장 기본적인 자료 구조 중 하나로 같은 종류의 여러 데이터를 순서대로 나열한 것입니다. 실생활에서의 배열:책장에 책을 순서대로 꽂아놓은 것달력의 날짜들학교 교실의 책상 배치배열에는 객체가 저장되며 배열에 저장된 객체 하나하나를 원소(element)라고 합니다. 각 원소는 0, 1, 2, ∙∙∙순으로 인덱스(index)를 부여 받습니다. 배열은 음수 인덱스(negative list index)를 사용할 수도 있으며 슬라이스(slice)라는 기능으로 원하는 ..
[TIL] 파이썬에서 입력 - input()은 string 이다
·
TIL
input()은 string 이다! input() 함수는 항상 문자열(string)을 반환한다는 것은 Python 프로그래밍에서 매우 중요한 개념입니다. 이를 이해하지 못하면 자주 오류를 범할 수 있습니다. 몇 가지 대표적인 오류 예시와 함께 설명하겠습니다.  숫자 덧셈 오류a = input("첫 번째 숫자를 입력하세요: ")b = input("두 번째 숫자를 입력하세요: ")result = a + bprint("합계:", result) 이 코드를 실행하고 사용자가 3과 4를 입력했다고 가정해봅시다. 예상 결과: 7실제 결과: 34 이 오류가 발생하는 이유는 input()이 문자열을 반환하기 때문입니다. 따라서 a + b는 숫자의 덧셈이 아니라 문자열의 연결(concatenation)을 수행합니다. 비교..
[TIL] 좋아요 버튼 누르면 버튼 컬러가 변경되는 기능 구현하기
·
TIL
TIL은 "Today I Learned"의 약자입니다. "오늘 내가 배운 것"이라는 뜻입니다. 새롭게 알게 된 흥미로운 사실, 정보, 또는 지식을 잊지 않기 위해 기록으로 남깁니다.   학습 날짜 : 2024년 8월 31일 (토)   0. 학습 목표좋아요 버튼을 누르면 버튼 컬러가 변경되는 기능을 구현합니다. Onclick 이벤트와 Toggle 메소드가 작동되는 원리를 이해합니다.  1.  문제 의식  서버에 좋아요 버튼에 대한 데이터를 저장하는 단계는 건너뛰고 단순히 클릭하면 '좋아요 버튼' 컬러가 변경되는 기능을 구현해봤습니다. 저는 클로드와 함께 코드를 짰습니다. 테스트 해보니 잘 작동합니다. 몆줄 안 되는 코드이지만 '좋아요 버튼'은 많은 서비스에서 활용되는 기능인 만큼, 코드가 작동되는 원리가 ..
[TIL] 자바스크립트(JavaScript) 기초 개념 - 변수, 블록 스코프, 함수 스코프, 호이스팅, 일시적 사각지대
·
TIL
TIL은 "Today I Learned"의 약자입니다. "오늘 내가 배운 것"이라는 뜻입니다. 새롭게 알게 된 흥미로운 사실, 정보, 또는 지식을 잊지 않기 위해 기록으로 남깁니다.   학습 날짜 : 2024년 8월 27일 (화) 0 학습 목표자바스크립트 기초 개념 중 '변수'에 대해서 이해한다. 1. 변수를 선언하는 방법 3가지 자바스크립트에서는 주로 세 가지 방법으로 변수를 선언할 수 있습니다. let, const, 그리고 var입니다. 1. let:재할당이 가능한 변수를 선언할 때 사용합니다.블록 스코프를 가집니다.let age = 25;console.log(age); // 출력: 25age = 26; // 재할당 가능console.log(age); // 출력: 26let age = 27; // 오..
[TIL] HTML, CSS
·
TIL
TIL은 "Today I Learned"의 약자입니다. "오늘 내가 배운 것"이라는 뜻입니다. 새롭게 알게 된 흥미로운 사실, 정보, 또는 지식을 잊지 않기 위해 기록으로 남깁니다.   학습 날짜 : 2024년 8월 26일 (월) 0. 학습 목표1. HTML과 CSS의 역할과 사용 방법을 이해한다.  1.  HTML과 CSS 이해하기 HTML (Hypertext Markup Language): HTML은 웹 페이지의 구조와 내용을 정의하는 마크업 언어입니다.주요 특징:태그를 사용하여 문서의 구조를 나타냅니다. 예: 제목 문단 내용  head 안에 들어가는 대표적인 요소들: , , , 등body 안에 들어가는 대표적인 요소들: , , 등 CSS (Cascading Style Sheets):..