본문 바로가기
카테고리 없음

[파이썬 기초] 파이썬 실행하기 단축키 / 파이썬 자료형 총정리 (자료형, 숫자형, 문자열, 불 참거짓 함수 알아보기)

by 오잉쿡 2023. 8. 6.
반응형

파이썬 공부 1일차

파이썬 실행하기 단축키? 

파이썬은 윗 부분에서 코드를 짜고 오른쪽 "▷"를 클릭하여 실행시켜준다

그럼 아래 터미널 부분에서 결과값을 확인 가능하다. 

 

근데 매번 마우스로 "▷"을 클릭하기 너무 귀찮다. 

단축키가 있을까? 

설정 방법은?

파이썬 버전 마다 다른데, 내가 설치한 버전 같은 경우에는 아래 톱니바퀴(설정) >  keyboard shortcuts  
클릭시 수많은 단축키들을 확인할 수 있다. (만약 keyboard shortcuts 탭이 따로 없다면, settings 하위에 속해있을 수도 있다)

내가 원하는 것은 "run python file" 검색 후 나만의 단축키를 만들어주면 된다. 
나는 ctrl+shift+R로 정했다!

 

 

 

숫자형

숫자형 : 숫자 형태로 이루어진 자료형.

우리가 흔히 사용하는 숫자들

 

- 정수(int) : 123,-123,0

- 실수(float) : 123.45,-123.45,3.4e10
- 8진수 : 0o34,0o25

- 16진수 : 0x2A,0xFF

 

** 숫자 타입 알아보기

>>> a = 1.25
>>> print(type(a))


<class 'float' >
>>> a = 7
>>> print(type(a))

<class 'int' >

**사칙 연산하기 (덧셈, 곱셈, 나눗셈, 몫, 나머지, 제곱)

 

더하기

>>> a = 3
>>> b = 4
>>> print(a+b)

7

곱하기

>>> a = 3
>>> b = 4
>>> print(a*b)

12

나누기

>>> a = 3
>>> b = 4
>>> print(a/b)

0.75

몫 구하기

>>> a = 3
>>> b = 4
>>> print(a//b)

0

나머지 구하기

>>> a = 3
>>> b = 4
>>> print(a%b)

3

제곱 

>>> a = 3
>>> b = 4
>>> print(a**b)

81

 

 

 

 

 

 

*이스케이프 코드란?

\n : 문자열 안에서 줄을 바꿀 때 사용

\t : 문자열 사이에 탭 간격을 줄 때 사용

\\ : 문자 \를 그대로 표현할 때 사용 

\' : 작은따옴표를 그대로 표현할 때 사용 

\" : 큰따옴표를 그대로 표현할 때 사용

 

*인덱싱(indexing) 

n번째 글자를 말해줘

- 0부터 시작 
- 공백도 카운팅

- 마이너스가 붙으면 가장 뒤부터 

 

a[이상 : 미만 : 간격]

*0은 생략가능 

 

*슬라이싱(Slicing)

특정 부분 미끄러져서 다 긁어와

>>>a = "19970422Rainy"
>>>print(a[:8])
#첫 글자부터 시작해서 8번 인덱스 전까지 출력

19970422
>>>a = "19970422Rainy"
>>>print(a[8:])
#8번째 미만부터 맨끝까지 


Rainy
>>>a = "12345678"
>>>print(a[::1])
#1칸 간격으로 다 가져와


12345678
>>>a = "I eat %d apples." %3

I eat 3 apples 

>>>b = "I eat " + str(3) + " apples"
>>>print(b)

I eat 3 apples 

%s :  문자열(String)

%c : 문자 1개(Character)

%d : 정수(Integer) 

%f : 부동 소수, 실수(Floating-point)

%o : 8진수

%x : 16진수

%% : Literal % (문자 '%' 자체) 

>>> "%10s" % "hi"
'          hi'
#hi 앞에 10글짜 띄어줘

>>> "%-10sjane." % 'hi'
'hi          jane.'
#jane 앞에 10글짜 띄어줘 
>>> a = "%0.4f" % 3.42134234
>>> print(a)
#소수점 제한하기 


3.4213
>>> a = "hobby"
>>> print(a.count('b')
#a에서 스펠링 b가 몇개 있는지 세어줘

2
>>> a = "hobby"
>>> print(a.find('b')
#a에서 스펠링 b가 몇번째 자리에 있니?

2
>>> a = "hobby"
>>> print(a.find('x')
#x는 없기 때문에 -1이 나옴

-1 
>>> a = "Life is too short"
>>> a.index('t')
#t가 몇번째에 있어? 

8
>>> a = ",".join("abcd")
>>> print(a)

a,b,c,d 
>>>a = "a:b:c:d"
>>>print(a.split(":"))
#문자열 나누기

['a', 'b', 'c', 'd']
>>> a = "HI"
>>> print(a.lower())
#소문자로 바꿔줘

hi
>>> a = "hi"
>>> print(a.upper())
#대문자로 바꿔줘 

HI

 

 

 

 

 

>>> a = "Life is too short"
>>> print(a.replace("Life", "Your leg"))

Your leg is too short
>>>a = "            HI            "
>>>print(a.strip())
#공백 없애기 

HI 

*리스트를 쓰는 이유 : 각각 상자에 관리하기 힘드니까, 하나로 몰아서 간편하게 관리하고자 함 

>>>a = "강하나"
>>>b = "홍길동"
>>>c = "이지훈"
>>>d = "천사랑"
>>>e = "구원희"
print(e)


구원희
>>>a = ["강하나","홍길동","이지훈","천사랑","구원희"]
>>>print(a[4])
#리스트




구원희
>>>a = [1,"홍길동","이지훈","천사랑","구원희",[1,"김만돌","english"]]
>>>print(a[5][2])
#리스트 안에 대괄호로 또 리스트를 넣을 수도 있고 숫자, 영어 상관없음


english
>>>a = [1, 2, 3]
>>>a[2] = 4
>>>print(a)
#리스트 값 수정하기

[1, 2, 4]
>>>a = ["가","나","다"]
>>>a[0:2] = ["A","B","C"]
#0부터 2전까지를 다음과 같이 바꿔줘 
>>>print(a)
#연속리스트 교체하기

['A', 'B', 'C','다']
a = ["가","나","다"]
a[0:2] = []
print(a)
#삭제하기

['다]

 

>>>a = ["가","나","다"]
>>>a.append("라")
>>>print(a)
#마지막에 추가하기

['가', '나', '다', '라']

 

>>>a = ["가","나","다"]
>>>a.insert(3,"라")
>>>print(a)
#3번째에 "라"를 추가해줘

['가', '나', '다', '라']
>>>a = [1,5,3]
>>>a.insert(0,4)
>>>print(a)
#0번째에 4를 추가해줘

[4,1,5,3]
>>>a = ["라","다","가"]
>>>a.sort()
>>>print(a)
#가나다순, 알파벳순, 숫자 크기순으로 리스트됨

['가','다','라']
>>>a = [100,2,56]
>>>a.sort()
>>>print(a)
#가나다순, 알파벳순, 숫자 크기순으로 리스트됨

[2, 56, 100]
>>>a = [100,2,56]
>>>a.reverse()
>>>print(a)
#리스트를 거꾸로 뒤집어줌

[56, 2, 100]
>>>a = [1,5,3]
>>>a.remove(1)
>>>print(a)
#1을 제거해줘

[5,3]
>>>a = [5,3,1,5,5,5]
>>>a.remove(5)
>>>print(a)
#5을 제거해줘. 단, 처음만 제거됨

[3,1,5,5,5]
>>>a = [1,2,3]
>>>a.index(3)
#3이 몇번째에 있는지

2
>>>a = [1,2,3]
>>>print(a.pop())
>>>print(a)
#a리스트에서 마지막이 제외된 1,2가 남게됨

3
[1,2]
>>>a = [1,5,3,1]
>>>print(a.count(1))
#a리스트에 있는 1의 개수를 세어줌

2
>>>a = [1,5,3,1,1]
>>>a.extend([8,3])
>>>print(a)
#마지막에 연장해서 추가해줘 

[1, 5, 3, 1, 1, 8, 3]

 

 

 

 

*불 boolean (참거짓 - 논리 자료형)

 

a = True
print(type(a))
#트루의 타입은 불(참거짓) 

<class 'bool'>
참 or 거짓 
"python"
"" 거짓
[1, 2, 3]
[ ] 거짓
( ) 거짓
{ } 거짓
1
0 거짓
None 거짓

 

 

**변수 : 자료형의 값을 저장하는 공간 

- 파이썬에서 사용하는 변수는 객체를 가리키는 것 
>>> a = 3
ex. 3이라는 값을 가지는 정수 자료형(객체)이 자동으로 메모리에 생성 
변수 a는 객체가 저장한 메모리의 위치를 가리키는 레퍼런스(reference)

a 라는 변수는 3이라는 정수형 객체를 가리키고 있다

 

메모리는 저장공간인데,

메모리에 먼저 올린 다음, 연산을 한다. 
변수는 담는 상자일 뿐, 메모리에 값이 저장되어있다. 

#파이썬튜터 #파이썬시각화 #직관적으로파이썬보기 

https://pythontutor.com/render.html#mode=edit

 

Python Tutor code visualizer: Visualize code in Python, JavaScript, C, C++, and Java

Please wait ... your code is running (up to 10 seconds) Write code in Python 3.6 C (gcc 9.3, C17 + GNU) C++ (g++ 9.3, C++20 + GNU) Java 8 JavaScript ES6 ------ Python 2.7 [unsupported] Visualize Execution hide exited frames [default] show all frames (Pytho

pythontutor.com

단계별로 시각화해서 볼 수 있는 사이트 : 파이썬튜터

>>>a = [1,2,3]
>>>b = a 
>>>a[1] = 4
>>>print(a)
>>>print(b)

[1,4,3]
[1,4,3]

#a의 첫번째를 4로 바꿨으니, b는 안바뀔 것 같지만, b도 같이 바뀐다 
a와 b가 같은 곳을 바라보고 있어서 주소값이 같이 바뀌어버린다. 

>>>a = [1,2,3]
>>>b = a 
>>>a[1] = 4
>>>print(id(a))
>>>print(id(b))
#같은 곳을 바라보기 때문에 주소값이 같다

139929101700736
139929101700736


그렇다면, a와 b를 분리해서 다르게 보려면 어떻게 해야할까? 
a[:] 를 넣으면, 기존의 a가 복제된다고 생각하면 됨.

>>>a = [1,2,3]
>>>b = a [:]
>>>a[1] = 4
>>>print(a)
>>>print(b)
#a만 바뀌고 b는 a의 원래를 값을 가져감

[1, 4, 3]
[1, 2, 3]

_____________________________________________________

>>>a = [1,2,3]
>>>b = a [:]
>>>a[1] = 4
>>>print(id(a))
>>>print(id(b))
#[:] a 처음부터 끝까지 슬라이싱 되어져서 새로운 b값이 생성됨. a는 a고, b는 b야 → 주소값이 달라졌음 

140512685596288
140512685596544

파이썬은 이게 된다!!! 
a,b 값을 각각 바꾸고싶다면?



[다른 코드언어] 
a = 3 
b = 5

tmp = b  #tmp라는 임시공에 일단 b를 저장해두고
b = a  #그럼 b는 비었으니, a를 갖다쓰고
a = tmp #그럼 이제 b가 비었으니, 아까 임시저장해둔 tmp(원래b값)을 가져온다 
print(a)
print(b)

5
3

_____________________________________________________________________

[파이썬]
a = 3 
b = 5
a,b = b,a
print(a)
print(b)

5
3

 

다음 학습으로 넘어가기

 

[파이썬] 리스트 vs 튜플 / 딕셔너리 / 집합 함수 알아보기

튜플 (tuple) 튜플은 몇가지 점을 제외하곤 리스트와 거의 비슷하다. 차이점 : - 리스트는 [대괄호], 튜플은 (소괄호)으로 둘러싼다 - 리스트는 요소값에 생성, 삭제, 수정이 가능하지만, 튜플은 바

oingcook.com

 

 

반응형

댓글