안녕하세요!
Python(변수, 숫자, 문자열)을 알아보자! 본문
# 문숫자 + 문자 + 숫자
a = 'Number'
b = 8
print(a,b)
Number 8
print(type(a))
print(type(b))
<class 'str'>
<class 'int'>
DataSpell로 python을 배웠다.
DataSpell에서는 code와 markdown 모드가 있는데 code는 말 그대로 코드작성시 사용하고, markdown은 메모장처럼 사용이 가능하다.
# 제목(Header)
# 제목 1
## _제목 2_
### 제목 3
#### 제목 4
##### 제목 5
###### 제목 6
이텔릭체는 *별표(asterisks)* 혹은 _언더바(underscore)_를 사용하세요.
두껍게는 **별표(asterisks)** 혹은 __언더바(underscore)__를 사용하세요.
**_이텔릭체_와 두껍게**를 같이 사용할 수 있습니다.
취소선은 ~~물결표시(tilde)~~ 를 사용하세요.
<u>밑줄</u>은 `<u></u>`를 사용하세요.
해당 기능을 markdown에서 사용시
제목(Header)
제목 1
제목 2
제목 3
제목 4
제목 5 제목 6이텔릭체는 별표(asterisks) 혹은 _언더바(underscore)_를 사용하세요.
두껍게는 별표(asterisks) 혹은 __언더바(underscore)__를 사용하세요.
_이텔릭체_와 두껍게를 같이 사용할 수 있습니다.
취소선은 물결표시(tilde) 를 사용하세요.
밑줄은 <u></u>를 사용하세요.
이렇게 나타나게 된다. 참고해서 사용하도록 하자.
들어가기전에 출력하는방법을 알아보자면,
python에선 print 함수를 사용한다.
# print 함수
기본 출력 장치로 결과를 출력
print(변수 or 출력하고싶은 결과)
\n escape문자(줄바꿈)
java와 다르게 파이썬에서는 간단히 출력이 가능하다. (system.out.print.ln에 비할바가...)
변수
# 변수
* 데이터를 저장하고, 변하는 수
* 이름과 값으로 구성
# 변수는 왜 필요한가?
* 변수를 사용하여 데이터에 이름을 붙여준다. 이름을 구분하기 쉽게 잘 붙여야 남들도 알아본다.
* ex) age
* java는 정적(정해준다), python은 동적(알아서 붙인다)
# 변수는 변한다.
* 변수는 공간입니다.(메모리에 할당된 공간)
# 변수 이름 규칙
**영문자로** + 숫자 + 언더바의 형식을 사용한다.
ex) a, a1, a1_
**공백이 있으면 안된다.**
**대소문자 구분한다**
**특수문자 안된다**
변수를 어렵게 생각하기보다는 이해하기쉽게 본인에 맞게 생각하는것도 나쁘지 않아보인다.
age1 = 25
age2 = 10
print(age1)
print(age2)
25
10
age1과 age2라는 변수에 25와 10의 값을 입력해주고, print를 이용하면 25와 10이라는 결과값이 출력된다.
a = b = 500
print(a)
print(b)
500
500
자바에서는 사용할 수 없는 a = b = 500 같은 값도 출력이 된다. (대단하다 python)
물론 실제로는 사용하는일이 거의 없다고 한다.
데이터의 종류
# 데이터의 종류
- 숫자형 : 정수, 실수
- 문자형 : 문자, 문자열
- 복합형 : 클래스, 리스트, 딕셔너리(object)
오늘은 해당 종류 중 숫자형과 문자형을 다룰 예정이다.
숫자형
# 숫자 형태로 이루어진 자료형
정수(int) : 1, 2, -1, 0 << 양수
실수(float) : 1.11, -1.000, 10e5, 10e-5
type을 생각하고 해야한다
python은 java와 다르게 type을 정해주지않아도 자동으로 인지한다.
그렇기 때문에 type을 생각하고 사용해야하며, type을 알아볼 수 있는 방법도 존재한다.
#int와 float은 더하면 float
a = 1
b = 1.0
print (type(a + b))
<class 'float'>
float이 class로 나오는 이유는 python은 모든것이 객체라고 생각하면 되는데, 숫자 문자열, 리스트, 딕셔너리 등 모든 데이터 타입이 내부적으로는 class기 때문이다. 그렇기 때문에 type으로 확인해도 class ooo 이렇게 나오는것이다.
여기서 문제
과일 가게의 총 매출
품목 : 바나나(1000원), 사과(500원), 체리(5000원)
고객 :
손씨 : 사과(2)
손씨 : 체리(3)
김씨 : 사과(4)
박씨 : 바나나(1)
박씨 : 사과(2)
박씨 : 체리(1)
객단가(고객 평균 매출)을 구하시오
banana = 1000
apple = 500
cherry = 5000
son = (apple*2) + (cherry*3)
kim = (apple*4)
park = (banana*1) + (apple*2) + (cherry*1)
print (son,kim,park,sep='원',end='원\n')
total = son + kim + park
print('총매출:',total,end='원''\n')
print('객단가:',total/3,end='원\n')
16000원2000원7000원
총매출: 25000원
객단가: 8333.333333333334원
이런식으로 해결하면 된다.
변수는 대중적으로 알아 볼 수 있게 사용하도록 하자.
문자열
- 문자 형태의 데이터
- " "이용하거나 ’ ’로 감싸준다
python에서 문자열의 특징은 ' ' 을쓰든, " "을 쓰든 통일만 해주면 된다는 점이다.
특히 javascript에서 ` ` 을 사용하는것처럼 ''' ''' 을 사용하면 사이의 모든게 문자열로 된다는 점이다.
e= 'hello/`\world'
print(e)
hello/`\world
a = '''
Hello
hi
'''
b = """
hello
welcome
"""
print(a)
print(b)
Hello
hi
hello
welcome
이런 방식이다.
또한 특이하게도
a = '='
b = '-'
print(a + b)
print(a * 5)
print(b * 3)
=-
=====
---
이런것이 가능하다.
# 인덱싱
- 슬라이싱 : 인덱스의 시작 ~ 끝 간격 지정 방법
a = 'Hello world'
print(a[0])
print(a[-1]) #뒤에서 첫번째
print(a[5]) #빈칸이라 빈칸이 나옴
H
d
java에서도 마찬가지지만 0은 첫번째임을 유의하자.
# 문숫자 + 문자 + 숫자
a = 'Number'
b = 8
print(a,b)
print(type(a))
print(type(b))
<class 'str'>
<class 'int'>
해당 방식으로 type을 유의해서 사용해야 한다.
print(type(int('1')))
print(int('1')+1)
print('1'+str(1))
print(int('1')+b)
<class 'int'>
2
11 <<< '11' 이다.
9
이후 문자열 포맷팅도 배웠다.
# 문자열 포맷팅
num = 14
a = 'My favorite number is {}'.format(num)
print(a)
My favorite number is 14
이것이 예전의 방식.
a = f'My favorite number is {num}'
print(a)
My favorite number is 14
이것이 최근의 방식이라고 한다.
문자열 함수
- upper() : 대문자 바꾸기
- lower() : 소문자 바꾸기
- count() : 문자열 안의 특정 문자열 개수
- join() : 특정 문자열을 기준으로 문자열을 삽입
- split() : 특정 문자열을 기준으로 문자열을 나눈다.
- replace() : 특정 문자열을 기정 문자열로 변환.
- strip() : 공백 제거(lstrip,rstrip)
- find() : 특정 문자열을 찾아준다.
각각 적용해 보았다.
a = 'pie'
a.upper()
'PIE'
a = ' hello python '
print(a.strip())
hello python
a.count('e')
1
a.find('p')
15
' '.join(['Hello', 'Python', 'Nice']) (문자사이에 빈칸으로 들어감)
'Hello Python Nice'
a = 'Hello Python Nice' #다시 나눠줌
a.split(' ')
['Hello', 'Python', 'Nice']
input 함수
- 기본 입력 장치로부터 입력된 정보를 반환한다.
변수 = input() 의 형식으로 사용
x = input()
print(x, type(x)) #변수를 넣고나면 타입확인을
해주면 좋다. / input함수는 str으로 나옴
456 <class 'str'>
이상으로 변수부터 문자열까지 알아봤다.
알던 개념의 다른 언어로 표현되는것이라 약간 어색하지만, 앞으로 많이 쓰일것들을 연습 해놔야겠다.
'개발일지 > python' 카테고리의 다른 글
python 제어문 - for , list 안의 for문 (0) | 2023.11.06 |
---|---|
python 제어문 - 반복문 간단 정리! (0) | 2023.11.05 |
Python set(집합), boolean(불리언) (0) | 2023.11.05 |
Python (list, tuple, dictionary) 간단 정리! (0) | 2023.11.03 |
Anaconda, dataspell 설치 및 기본 설정1 (4) | 2023.11.01 |