파이썬 기본 정리

📌 list

# replace
a= '안녕 하세요 ㅋㅋㅋ'
b= a.replace('ㅋ','z')
print(b)

slice

a= 'abcdefg'

b= a[0:8:3]

print(b)
# adg

# 마지막은 증가양

list 끼리 더하기

a= [1,2,3,4,5]
b= [5,6,7,8]

a.extend(b) # a += b

print(a)

# 만약 a.append(b)를 한다면 a의 마지막 원소에 b가 통채로 들어감

dict()

a= dict()

a= {'안녕':'zz','1':2}

print(a['안녕'])
print(a.get('안녕'))

del a['안녕']
a.pop('1')

print(a)

# 모두 지울거면 a.clear()
a=dict()
a= {'a':1,'b':2}

for i in a:
    print(a[i])
    # 1 // 2

정렬

a= {'a':100, 'b':90 , 'c': 95 , 'd':40}

reverse = sorted(a, key=lambda x: x[0])

reverse.sort(reverse=True)

print(reverse)

map & filter

a= {'a':100, 'b':90 , 'c': 95 , 'd':40}

reverse = sorted(a, key=lambda x: x[0])

a = [1,2,3,4,5,6,7]

l = list(filter(lambda x: x % 2, a))

print(l)

m = list(map(lambda x:x*2,a))

print(m)
  • map = mapping

stdin

import sys

T = int(input()) #Test case
for i in range(T):
        a,b = map(int, sys.stdin.readline().split())
        print(a+b)

맨 첫줄 Test case를 입력받을 때는 input()을 사용해도 무방합니다.
그러나 반복문으로 여러줄 입력받는 상황에서는 반드시 sys.stdin.readline()을 사용해야 시간초과가 발생하지 않습니다

https://velog.io/@yeseolee/Python-%ED%8C%8C%EC%9D%B4%EC%8D%AC-%EC%9E%85%EB%A0%A5-%EC%A0%95%EB%A6%ACsys.stdin.readline

이차원 배열 만들기

import sys
data = []
n = int(sys.stdin.readline())
for i in range(n):
    data.append(list(map(int,sys.stdin.readline().split())))

여러개의 정수

import sys
a,b,c = map(int,sys.stdin.readline().split())

n개의 줄을 입력받아 list로 변환

import sys
n= int(sys.stdin.readline())

data = [sys.stdin.readline().rstrip() for _ in range(n)]
print(data)

list 입력

import sys

n = int(input())

a=[]

for _ in range(n):
    a.append(list(map(int,sys.stdin.readline().split())))

print(a)

String 대소문자 변환

a=['a','b','c']

s = "".join(a)

s.capitalize() #첫문자만 대문자

s.upper() #모두 대문자
s.lower() #모두 소문자

추가 & 삭제

index로 삭제

del a[1]

값으로 삭제

a.remove(value)

좋은 웹페이지 즐겨찾기