일 | 월 | 화 | 수 | 목 | 금 | 토 |
---|---|---|---|---|---|---|
1 | 2 | 3 | ||||
4 | 5 | 6 | 7 | 8 | 9 | 10 |
11 | 12 | 13 | 14 | 15 | 16 | 17 |
18 | 19 | 20 | 21 | 22 | 23 | 24 |
25 | 26 | 27 | 28 | 29 | 30 | 31 |
- 빅데이터
- matplotlib
- deg2rad
- coding
- namedTuple
- set_index
- np.save()
- DEEPLEARNING
- linalg.solve()
- 비가변매개변수
- request Method
- 작업형
- np.savetxt()
- np.load()
- list
- Python
- 실기
- BASIC
- 빅데이터분석기사
- numpy
- 필답형
- array
- Math Function
- 가변매개변수
- Heapreplace
- 빅분기
- heapmerge
- kaggle
- os.path.join
- Collections
- Today
- Total
맞춤형 플랫폼 개발 도전기 (웹개발, 딥러닝, 블록체인)
Python Basic 1 (Variable, Print, Input) 본문
Python은 확장성과 이식성이 높다는 장점과, 많은 표준 라이브러리들이 있어 사용이 편리하다.
그만큼 아는만큼 활용도가 높은 언어이다.
그래서, 기본적인 특징부터, 활용하기 좋은 라이브러리까지 한번 정리해보려 한다.
1. 여러 번수 선언시 한꺼번에 선언 가능하며, swap을 별도 함수 없이 쉽게 할 수 있다.
a, b, c = 100, 200, 300
a, b = b, a
2. print()
기본적으로 print에는 Java의 println이 적용되어 있다고 생각하면 편하다. 그래서, \n 이 적용되지 않은 채로 출력하고 싶다면 end 인자를 붙여주면 된다.
한 print문 안에서 print 되는 요소들 사이에 구분자를 넣고 싶다면 sep 인자를 사용한다. sep인자는 default 값이 ""이다. (없어도 자동으로 sep=""가 포함되어 있다고 보면 된다.
A = [i for i in range(10)]
for a in A :
print(a, end=' and ')
# 0 and 1 and 2 and 3 and 4 and 5 and 6 and 7 and 8 and 9 and
print(10, 20, 30, sep=" -> ")
# 10 -> 20 -> 30
많이 사용되는 escape code에는 \n : 줄바꿈, \t : 탭, \\ : 역슬래시, \' : 홀따옴표, \" : 쌍따옴표 정도가 있다. (윈도우의 file seperator 문자는 \ (backslash))
특수 문자(escape code)로 인식하게 하고 싶지 않다면 문자열 앞에 r 을 붙여 쓰면 된다. 이걸 raw string이라고 한다.
path = r"C:\User\Python"
# C:\User\Python
문자열 포맷팅이 여러 언어들을 하다 보면 헷갈릴 때가 있다. 그래서 방법 별로 간단히 정리해보자면,
'My name is %s, I\'m %d years old' %('Katie', 25)
"원주율은 %.4f 입니다" %(3.141592)
print("%5d:%5d:%5d:%5d" % (a, b, c, d)) # 10칸 오른쪽 정렬
print("%-5d:%-5d:%-5d:%-5d" % (a, b, c, d)) # 5칸 왼쪽 정렬
# "My name is Katie, I'm 25 years old"
# '원주율은 3.1416 입니다'
# 10: 100: 1000: 10000
# 10 :100 :1000 :10000
"My name is {}, I'm {} years old".format("윤은경", 25)
"My name is {name}, I'm {age} years old".format(name = "윤은경", age = 25) # 반대로 써도 상관 없음
print("원주율 = {:+.3f}".format(-pi)) # + : -값이 들어오면 부호 표시해줘야 함 실수일시 :로 시작)
print("PI = {:10.3f}".format(pi)) # 전체적으로 봤을 때 10자리, 소수점 아래는 3자리 (소수점 위가 7자리)
print("[A{:>10}]".format("Right")) # 10자리 안에서 Right 문자 넣음 ( <, >, ^ )
# "My name is 윤은경, I'm 25 years old"
# "My name is 윤은경, I'm 25 years old"
# [A Right]
f'Language: {lang}, Author: {author}'
print(f'원주율은 {pi:.2f} 입니다')
# 'Language: Python, Author: Guido Van Rossum'
# 원주율은 3.14 입니다
%s : 문자열, %d : 십진수 정수, %f : 실수, %% : % 문자
3. input()
입력 받는 방법이 쉽다. Scanner 같은 클래스를 안 써도 된다. (C++ 은 cin, C# 은 Console.readLine())
변수 = input(입력 받기 전에 출력할 내용) 하면 된다.
height = float(input("키를 입력하세요 cm : "))
# 키를 입력하세요 cm : 173.9
입력을 여러개 받고 싶을 경우에 split()을 활용한다.
기본적으로 str 형태로 입력을 받아지는데, split()은 " "을 기준으로 잘라서 가져오기 때문에 10 20 30 이면 10, 20, 30으로 받아온다
주의해야 할 점은 한꺼번에 int로 바꾸고 싶다면, map을 이용해야 한다. int() 를 모든 값에 적용한다고 생각하면 빠르다.
map이라는 건 map( 적용할 함수, 값들(iterator)) 형태로 각각의 요소에 함수을 적용(mapping)한다고 생각하면 되겠다. map은 후에 더 깊게 다룰 예정이라 이 정도로 넘어가겠다.
hour, minute, second = input('시:분:초 입력 ').split(':') # 입력값(str)을 ':' 으로 쪼갬
print(f'{hour}시 {minute}분 {second}초')
# 시:분:초 입력 21:34:22
# 21시 34분 22초
a, b, c = map(int, input('3개의 정수 입력').split())
print(a+b+c)
# 36
다음으로는 DataType 들에 대해서 알아보겠다.
'코딩' 카테고리의 다른 글
Python Basic 4 (Comprehension) (0) | 2021.11.03 |
---|---|
Python Basic 3 (Conditional : If , Loop : While, For) (0) | 2021.11.03 |
Python Basic 2 (Datatype : List, Tuple, Set, Dict) (0) | 2021.11.02 |
Python Basic Preparation (0) | 2021.08.07 |
Python Coding : 최적 선택 그리디(Greedy) (0) | 2021.07.20 |