숫자 자료형의 종류
복소수
복소수는 실수부와 허수부로 이루어져 있습니다. 데이터 입력시 허수부 부분에서 숫자 뒤에 j를 붙여주면 됩니다.( 예 : 2 + 3j )
숫자 계산
연산자의 종류 복소수
연산자 | 설명 | 예제 | 결과값 |
+ | 더하기 | 127 + 50 | 177 |
- | 빼기 | 127 - 50 | 77 |
* | 곱하기 | 127 * 5 | 6350 |
/ | 나누기 | 127 / 50 | 2.54 |
// | 몫(나머지 버리고 정수출력) | 127 // 50 | 2 |
% | 나머지 | 127 % 50 | 27 |
** | 거듭 제곱 | 2 ** 3 | 8 |
설명 | 예제 | 결과값 | |
2 + 3j | 복소수 | ||
complex() | 복소수를 만들어주는 함수 | complex(2, 3) | 2 + 3j |
a.real | a변수의 실수부 출력 ( a = 2 + 3j ) - 실수부 : 2 | a.real | 2.0 |
a.imag | a변수의 허수부 출력 ( a = 2 + 3j ) - 허수부 : 3 | a.imag | 3.0 |
int() | 정수형으로 변환 | int(2.5) | 2 |
float() | 실수형으로 변환 | float(2) | 2.0 |
연산자를 이용하여 계산해보기
1. 더하기 연산
>>> a = 127 >>> b = 50 >>> res = a + b >>> print(a, '+', b, '=', res) 127 + 50 = 177 |
2. 빼기 연산
>>> a = 127 >>> b = 50 >>> res = a - b >>> print(a, '-', b, '=', res) 127 - 50 = 77 |
3. 곱하기 연산
>>> a = 127 >>> b = 50 >>> res = a * b >>> print(a, '*', b, '=', res) 127 * 50 = 6350 |
4. 나누기 연산
>>> a = 127 >>> b = 50 >>> res = a / b >>> print(a, '/', b, '=', res) 127 / 50 = 2.54 |
5. 나머지 연산
>>> a = 127 >>> b = 50 >>> res = a % b >>> print(a, '%', b, '=', res) 127 % 50 = 27 |
6. 나누셈한 결과에서 나머지는 버리고 정수만 출력하는 연산
>>> a = 127 >>> b = 50 >>> res = a // b >>> print(a, '//', b, '=', res) 127 // 50 = 2 |
7. 거듭제곱 연산
>>> a = 2 >>> b = 3 >>> res = a ** b >>> print(a, '**', b, '=', res) 2 ** 3 = 8 |
8. 복소수 더하기 연산1
>>> a = 2 + 3j >>> b = 3 + 4j >>> res = a + b >>> print(a, '+', b, '=', res) (2+3j) +(3+4j) = (5+7j) |
9. 복소수 더하기 연산2
>>> a = complex(3, 4) >>> b = complex(4, -3) >>> res = a + b >>> print(a, '+', b, '=', res) (3+4j) +(4-3j) = (7+1j) >>> >>>res.real 7.0 >>>res.imag 1.0 |
.real : 복소수의 실수부 추출
.imag : 복소수의 허수부 추출
res.real을 이용하여 복소수(7+1j)의 실수부인 7.0을 출력하고 있고 res.imag을 이용하여 허수부인 1.0을 출력하는 것을 알수 있습니다.
10. int()함수 사용
int()함수는 정수로 변환해주는 함수
>>> a = int(2.5) >>> a 2 >>> b = int('5') >>> b 5 >>> print(a, '+', b, '=', int(a + b)) 2 + 5 = 7 |
11. float()함수 사용
float()함수는 실수로 변환해주는 함수
>>> a = float(2) >>> a 2.0 >>> b = float('5.5') >>> b 5.5 >>> print(a, '+', b, '=', float(a + b)) 2.0 + 5.5 = 7.5 |
변수와 입력함수
변수
• 앞에서 연산자를 하면서 a, b, c를 사용하여 연산을 하였습니다. 이때 사용한 a, b, c는 변수입니다.
• 변수란 한자 그대로 변하는 수를 변수라 합니다.
예) a = 5
• 위 예는 값 5를 변수 a에 대입한다는 뜻입니다.
• 변수를 만드는 규칙
- 시작문자는 영문자로 시작하며 문자와 숫자를 사용할 수 있습니다.
- _(밑줄 문자)로 시작할 수 있습니다.
- 대소 문자를 구분합니다.
- 특수문자와 키워드는 사용할 수 없습니다.
input()함수
• Input()함수는 사용자가 키보드로 입력하는 함수로 키를 누를 때까지 화면을 멈추는 효과를 준다. 키를 누르고 엔터 키를 누르면 다음 줄로 넘어갑니다.
사용예) 변수 = input()
1. input()함수로 문자열 입력하기
>>> a = input() 파이썬 공부합니다. >>> a 파이썬 공부합니다. |
>>> a = input('문자열 입력 : ') 문자열 입력 : 파이썬 공부합니다. >>> a 파이썬 공부합니다. |
2. input()함수로 숫자 입력하기
>>> a = input() 100 >>> a '100' |
input()함수로 100을 입력하고 a변수를 출력해 보면 위와 같이 '100'이 출력되는 것을 알수 있듯이 문자 숫자로 출력되었습니다.
2-1. 입력한 문자 숫자를 숫자로 변환하기
>>> a = int(input()) 100 >>> a 100 |
>>> a = int(input('숫자 입력 : ')) 숫자 입력 : 100 >>> a 100 |
3. 여러개의 숫자를 입력하기
>>> a, b = input('두 개의 정수를 입력하세요 : ').split() 두 개의 정수를 입력하세요 : 30 50 >>> a = int(a) >>> b = int(b) >>> print(a, '+', b, '=', a+b) 20 + 50 = 80 |
split()함수는 구분자로 분리 주는 함수이다. 위 예는 공백을 기준으로 분리하여 각각 a = 30, b = 50이 대입하고 정수로 변환하여 계산하는 소스코드이다.
4. map을 이용하여 정수 입력하기
>>> a, b = map(int, input('두 개의 정수를 입력 : ').split()) 두 개의 정수를 입력 : 20 30 >>> print(a, '+', b, '=', a+b) 20 + 30 = 50 >>> >>> x, y = map(int, input('두 개의 정수를 입력 : ').split(',')) 두 개의 정수를 입력 : 30,40 >>> print(a, '+', b, '=', a+b) 30 + 40 = 70 |
대입연산자의 종류
연산자 | 사용 예 | 설명 |
+= | a += 3 | a = a + 3과 동일하다. |
-= | a -= 3 | a = a - 3과 동일하다. |
*= | a *= 3 | a = a * 3과 동일하다. |
/= | a /= 3 | a = a / 3과 동일하다. |
//= | a //= 3 | a = a // 3과 동일하다. |
%= | a %= 3 | a = a % 3과 동일하다. |
**= | a **= 3 | a = a ** 3과 동일하다. |
관계 연산자의 종류
연산자 | 의미 | 설명 |
== | 같다 | 두 값이 같으면 참 |
!= | 같지 않다. | 두 값이 다르면 참 |
> | 초과 | 왼쪽 값이 크면 참 |
< | 미만 | 왼쪽 값이 작으면 참 |
>= | 이상 | 왼쪽 값이 크거나 같으면 참 |
<= | 이하 | 왼쪽 값이 작거나 같으면 참 |
논리 연산자의 종류
연산자 | 설명 | 예 |
and | 둘 다 참이면 참 | a >= 0 and a<=100 |
or | 둘 중에 하나라도 참이면 참 | a < 0 or a > 100 |
not | 참이면 거짓, 거짓이면 참 | not(a >= 100) |
비트 연산자의 종류
연산자 | 의미 | 설명 |
& | 논리곱(and) | 둘 다 1이면 1 |
| | 논리합(or) | 둘 중에 하나만 1이면 1 |
^ | 논리적 배타합(xor) | 둘이 같으면0, 다르면 1 |
~ | 부정 | 1은 0으로, 0은 1로 변경 |
<< | 왼쪽으로 비트 이동 | 왼쪽으로 시프트( shift ) |
>> | 오른쪽으로 비트 이동 | 오른쪽으로 시프트( shift ) |
'프로그램언어 > 파이썬' 카테고리의 다른 글
4강 튜플 (0) | 2020.07.14 |
---|---|
3강 리스트 (0) | 2020.06.18 |
1.강 Hello world 출력 (1) | 2020.06.17 |
거북이 글자쓰기(모듈버전) (0) | 2020.06.04 |
거북이 원 모양으로 글자쓰기 (0) | 2020.06.03 |