반응형

PYTHON 23

[Python] JSON 처리

Python에서 JSON(JSON(JavaScript Object Notation))은 데이터를 구조적으로 표현하기 위한 포맷으로, 웹 애플리케이션에서 자주 사용됩니다. Python에서 JSON을 처리하는 방법은 json 모듈을 사용하여 쉽게 다룰 수 있습니다. 이 모듈을 통해 JSON 데이터를 파싱하거나 직렬화(serialize)할 수 있습니다. 다음은 Python을 활용한 JSON 처리 방법 3가지와 예시입니다:1. JSON 문자열을 Python 객체로 변환 (JSON 파싱)json.loads() 함수를 사용하여 JSON 형식의 문자열을 Python 객체로 변환할 수 있습니다. 이 함수는 JSON 문자열을 파싱하여 Python의 데이터 타입(딕셔너리, 리스트 등)으로 변환합니다.import json#..

[Python] 예외처리 try, except

파이썬에서 예외 처리(Exception Handling)는 프로그램 실행 중 발생할 수 있는 오류를 처리하기 위한 기법입니다. 예외 처리 덕분에 오류가 발생해도 프로그램이 비정상적으로 종료되지 않고, 지정된 대체 작업을 수행하거나 오류 메시지를 사용자에게 적절히 제공할 수 있습니다.기본적인 예외 처리 구문파이썬에서 예외 처리는 try, except, else, finally 구문을 사용합니다.try: 예외가 발생할 수 있는 코드를 작성합니다.except: 예외가 발생했을 때 처리할 코드를 작성합니다.else: 예외가 발생하지 않았을 때 실행할 코드를 작성합니다.finally: 예외 발생 여부와 상관없이 항상 실행되는 코드를 작성합니다. 기본 구조 try: # 예외가 발생할 수 있는 코드except ..

[Python] map

map() 함수는 주어진 함수를 iterable의 각 항목에 적용하여 새로운 iterable을 반환하는 함수입니다. 특히 반복문을 사용할 때 보다 간결한 코드로 변환할 수 있어 유용합니다. map() 함수map() 함수는 다음과 같은 구문을 가집니다:map(function, iterable)  function: 각 항목에 적용할 함수.iterable: 반복 가능한 객체(리스트, 튜플 등).map() 함수는 function을 iterable의 모든 요소에 적용하고, 그 결과를 새로운 iterable로 반환합니다. 결과는 map 객체로 반환되므로, 이를 리스트나 다른 자료형으로 변환해야 사용할 수 있습니다.   예시 1: 리스트의 모든 값을 제곱하기map() 함수와 lambda 함수를 사용하여 리스트의 모든..

[Python] List Comprehension

파이썬에서 자주 사용하는 기능 중 하나는 리스트 컴프리헨션(List Comprehension) 입니다. 이 기능은 기존의 리스트를 기반으로 새로운 리스트를 간결하고 효율적으로 생성할 수 있게 해줍니다.# 1부터 10까지의 숫자 중 짝수만 추출하여 새로운 리스트 생성numbers = [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]even_numbers = [x for x in numbers if x % 2 == 0]print(even_numbers) # 출력: [2, 4, 6, 8, 10] 이 코드에서는 x for x in numbers if x % 2 == 0를 사용하여 리스트의 각 요소를 순회하면서 짝수인 값만 필터링하여 새로운 리스트를 만듭니다. 리스트 컴프리헨션을 사용하면 for문을 이용..

[Python] Files (파일 관련)

이번 포스팅에서는 파이썬으로 파일을 읽고, 쓰기 등 간단한 파일 관련된 코드에 대해 정리 해보겠습니다. Reading 파일 읽기는 with open 구문으로 읽고자하는 파일을 지정한 후 read() 구문을 이용해서 할 수 있습니다. with open('file.txt', 'r') as file: content = file.read() print(content) Writing 파일 읽기와 마찬가지로 작성하고자 하는 파일 명을 with open 구문으로 저정한 후 write()를 활용하면 됩니다. with open('file.txt', 'w') as file: file.write('Hello!') Appending 이미 있는 파일에 붙여쓰기를 하기 위해서는 'a' 옵션으로 파일을 지정한 후 write()를 ..

[python] pass, continue, break 활용법

안녕하세요, 오늘은 정말 간단한 python에서 pass, continue, break 문법 각각의 역할과 활용법에 대해서 정리해보겠습니다. 쉽게 정리하자면, pass : 아무 동작도 하지 않습니다. 반복문에서 아무런 영향을 끼치지 않습니다. continue : 반복문에서 다음 loop로 건너뛰면서 loop는 지속됩니다. break : 반복문을 멈추고 loop 밖으로 나갑니다. 말로 설명하는 것보다 쉽게 이해할 수 있도록 아래 예시로 정리하겠습니다. pass는 왼쪽의 결과에서 볼 수 있듯이 코드에 아무런 영향을 끼치지 않습니다. 따라서 pass는 주로 조건문에서 별다른 행동이 필요하지 않을 때, 또는 class 생성시 초기에 별다른 값이 없을때 전체 코드 동작을 확인하기 위해 임시적으로 활용하기도 합니다..

[연결 리스트] 팰린드롬 연결 리스트

* leetcode 234. Palindrome Linked List Q. 연결리스트가 팰린드롬 구조인지 판별하라. # 입력 1->2 # 출력 false # 입력 1->2->2->1 # 출력 true 풀이 1. 리스트 변환 # 연결 리스트를 파이썬의 리스트로 변환시켜 풀이 def isPalindrome(head: ListNode) -> bool: q: List = [] if not head: return True node = head # 리스트 변환 while node is not None: q.append(node.val) node = node.next # 판별 while len(q) > 1: if q.pop(0) != q.pop(): # 인덱스를 지정하여 처음과 끝 값을 비교 return False ..

[배열] 배열 파티션 1

* leetcode 561. Array Partition 1 Q. n개의 페어를 이용한 min(a, b)의 합으로 만들 수 있는 가장 큰 수를 출력하라. # 입력 [1, 4, 3, 2] # 출력 [4] # 설명 n은 2가 되면, 최대 값은 4이다. min(1, 2) + min(3, 4) = 4 풀이 1. 오름차순 풀이 최대 min()을 만들기 위해서 내림차순으로 배열을 만들면 항상 최대 min() 페어를 만들 수 있다는 점을 활용한다. 이때, 문제에서 배열 입력값은 2n개일 것이기 때문에 오름차순으로도 같은 결과가 나온다. def arrayPairSum(nums: List[int]) -> int: sum = 0 pair = [] nums.sort() for n in nums: pair.append(n) ..

[배열] 새 수의 합

* leetcode 15. 3Sum Q. 배열을 입력받아 합으로 0을 만들 수 있는 3개의 앨리먼트를 출력하라 # 입력 nums = [-1, 0, 1, 2, -1, -4] # 출력 [ [-1, 0, 1], [-1, -1, 2] ] 풀이 1. 브루트 포스로 계산 # 3개의 포인터를 이용하여 모두 더해서 0이 되는 값들을 찾는다. def threeSum(nums: List[int]) -> List[List[int]]: results = [] nums.sort() # n^3 반복 for i in range(len(nums) - 2): # 중복값 제거 if i > 0 and nums[i] == nums[i - 1]: continue for j in range(i + 1, len(nums) - 1): if j >..

반응형