[python] 기초

2021. 4. 27. 23:21Python/문법

Ver. Jupyter Notebook (Anaconda3)

▶ 함수

len('abc')
len('012')

▶ 메소드: 함수에 포함된 개념으로 문자열만 쓸 수 있는 함수.

A.upper(abc)
A.upper(012)    # TypeError

 (대문자로 치환하는 .upper() 메소드에 숫자(int, float) 입력시 오류 발생)


▶ 작업 경로

pwd

▶ Markdown (제목)

<단축키>

m : markdown(제목)

y : code(코드)

r : raw(메모)

# Markdown
### Markdown

▶ 데이터 자료형 관련

  ● 숫자형(int, float)

1+1    # 덧셈
2-2    # 뺄셈
4*2    # 곱셈
4/2    # 나눗셈
5//2   # 나눗셈 몫
5%2    # 나눗셈 나머지
2**3   # 거듭제곱

  ● 문자열(string): ' ', " "

"I'm a boy"
'I\'m a boy'

"""
I'm a boy
"""

  ● 리스트 [] : 순서가 있음

A = [2, 1, 3]

# 요소 개수
len(A)

# 리스트 오름차순
A.sort()

# 리스트 내림차순
A.reverse()

# 리스트 요소 추가
A.append(4)

# 리스트에 리스트 추가
x = ['A', 'B']
y= ['C', 'D']
x.extend(y)    # x + y

# 위치 찾기 (리스트 인덱싱(indexing))
A = [10, 20, 30, 40, 50]
A[0]			# 0번째 자리
A[-1]			# 뒤에서 첫 번째 자리

# 리스트 내 요소 삭제
A = [10, 20, 30, 40, 50]
A.pop(0)		# 0번째 자리 요소 삭제

# 리스트 슬라이싱
A = [10, 20, 30, 40, 50]
A[:]			# 전체
A[1:3]			# 1~2 까지
A[:2]			# 0~1 까지
A[2:]			# 2~end 까지
A[::2]			# 2 간격 마다
A[::-1]			# 역순

  ● 딕셔너리 {} : 순서가 없음. Key-Value 쌍

A = {'name':'Jeong' , 'country':'Korea' , 'favorite_numbers':[0, 2, 10]}

# 딕셔너리 추출
A['name']		# Jeong
A[2][0]			# 0

# 딕셔너리 추가
A['age']=32		# {'name': 'Joeng', 'country': 'Korea', 'favorite_numbers': [0, 2, 10], 'age': 32}

# 딕셔너리 key 출력
A.keys()		# dict_keys(['name', 'country', 'favorite_numbers', 'age'])

# 딕셔너리 value 출력
A.values()		# dict_values(['Jeong', 'Korea', [0, 2, 10], 32])

# 딕셔너리 전체 출력
A.items()		# dict_items([('name', 'Jeong'), ('country', 'Korea'), ('favorite_numbers', [0, 2, 10]), ('age', 32)])

  ● 집합 {} : 유일한 값만 남김

# 공통된 집합만 남김
A = set([1, 1, 2, 3, 3])    # {1, 2, 3}

# 집합에 한개 요소 추가
A.add(4)                    # {1, 2, 3, 4}

# 집합에 여러 요소 추가
A.update([5, 6])            # {1, 2, 3, 4, 5, 6}

# 집합에 요소 삭제
A.remove(1)                 # {2, 3, 4, 5, 6}


a = set([1,2,3,4,5])
b = set([3,4,5,6,7])

# 합집합
a|b                         # {1, 2, 3, 4, 5, 6, 7}

# 교집합
>>> a&b                     # {3, 4, 5}

# 차집합
>>> a-b                     # {1, 2}

  ● 튜플 () : 요소 수정이 안됨

A = (1, 2)

▶ 함수 관련

  ● 불리언(Boolean) 자료형 : True, False

# True인 경우
1==1		# 같다
1!=2		# 다르다
2>1		# 크다
2>=1		# 크거나 같다
1<2		# 작다
1<=2		# 작거나 같다

  ● 조건문: if, elif, else

# if문: 2가지 상황을 따질 때
if 1<2:
	print('yes')
else:
	print('no')			# yes

# elif문: 2가지 초과한 상황을 따질 때
name = 'Jeong'

if name == 'Kim':
	print('hey Kim')
elif name == 'Lee':
	print('hey Lee')
elif name == 'Bak':
	print('hey Bak')
else:
	print('hey anonymous')		# hey anonymous

  ● 반복문: for, while

# for문: 정해진 반복대상(list, range)에 대해 반복
names = ['Jeong' , 'Kim' , 'Lee']
for name in names:
	Hi(name)		# Hi Jeong	# Hi Kim	# Hi Lee

# for문 range 함수
for i in range(1, 4):
	print(i)		# 1		# 2		# 3

# while문: 조건에 맞으면 반복
i = 0
while i < 3:
	print('ture')
	i = i + 1		# true		# true		# true

i = 0
while i < 3:
	print('ture')
	i += 1			# true		# true		# true

  ● 함수 만들기: def, return

# 함수 정의
def 함수명():
	명령문
	return 함수명

# 리턴 함수
def sum_numbers(a, b):
	c = a + b
	d = a * b
	return c, d

sum_numbers(2, 4)		# 6, 8

  ● format

print('A: {a}, B: {b}'.fotmat(a=1, b=2)			# A: 1, B= 2

print('A: {1}, B: {0:.f4}'.fotmat(1, 2)			# A: 1, B= 2.0000

print('A: %s, B: %s' % (1, 2)				# A: 1, B= 2
# %s: 문자, %d: 숫자, %f: 부동소수

 

 

'Python > 문법' 카테고리의 다른 글

[python] kaggle, boston marathon  (0) 2021.04.29
[python] 외부데이터  (0) 2021.04.29
[Python] 정리  (0) 2021.04.29
[python] pandas  (0) 2021.04.28
[python] 심화  (0) 2021.04.27