티스토리 뷰
Code Academy 의 Python 문법 강의를 들으며 참고용으로 정리한 내용입니다.
https://www.codecademy.com/ko/tracks/python-ko
Overview
파이썬은 1991년 2월에 발표된 인터프리터식 프로그래밍 언어(Interpreted language)로, 다른 언어보다 비교적 쉽게 프로그래밍이 가능하다.
파이썬을 작성하고 실행하는데 Java처럼 컴파일러가 필요하지 않다.
파이썬의 특징은 문법이 매우 쉽다는 것이다. hello, world 를 출력 -->
print ("hello, world")
변수 선언시에도 변수의 형을 미리 정하지 않고
var = 5 var = 'hello'
이렇게 그냥 정의해주면 된다. 다른 언어에 비해 무척 간결하다.
변수선언
var = 5
var 과 같이 이름을 사용하여 식별자를 나타내고, = 연산자를 사용하여 원하는 값을 지정한다.
다양한 자료형(int/float/booleans) 을 선언하고 싶다면, 변수의 유형을 선언하지 않고 그냥 원하는 값을 바로 넣으면 된다 (편하다!)
my_int = 6 my_float = 1.32 my_bool = True #'True' 나 "True" 라고 쓰면 인식을 못한다.
#파이썬은 대소문자를 구분(case-sensitive) 하기때문에 조심해야한다
재 선언이필요하다면
my_int=6
my_int =3
print my_int
명령문
파이썬의 명령문 (Statement) 은 일반 언어의 문장과 비슷하다.
파이썬에서 변수와 자료형 각각은 명령문이 될 수 없지만, 이들을 이용하여 명령문을 만들 수는 있다.
JavaScript 의 ; 와 같이, 파이썬에서는 명령문이 공백(Whitespace) 로 구분된다.
파이썬에서는 아무데나 여백을 넣을 수 없다!
IndentationError: expected an indented block
파이썬의 공백이 제대로 작동하지않을때, 위의 에러 메세지를 보게 된다.
def spam(): eggs = 12 return eggs print spam()
함수 spam()을 정의하고, 그 함수를 정의할 때 다음칸 두번째줄부터 space 4번이 들어가야한다.
주석
# 로 시작하면 Comment (한줄 )
""" ~ """ 는 여러 줄을 주석처리 하는것
연산자
덧셈 연산자. Addition (+)
뺄셈 연산자. Substraction (-)
곱셈 연산자. Multiplication (*)
나눗셈 연산자. Division (/)
거듭제곱 연산자. Exponentiation (**)
모듈로 연산자. Modulo (%)
거듭제곱일 때, 2**3 = 8. 2의 3승 이라는 뜻
모듈로 % 는 어떤 수를 정수로 나누고 난 나머지 값 만을 반환한다.
문자열
파이썬의 또 다른 유용한 자료형은 문자열 (String) 이다.
- 선언 : string 처럼 변수를 설정할 필요없이 name = "Yunhee" 처럼 ''나 "" 안에 필요한 문자열을 넣어 사용할 수 있다.
- 문자열 따옴표 안에 \(백슬래쉬) 를 넣어 이스케이프 처리 할 수 있다. 예를들에 문자열 안에 따옴표를 넣어야 할 경우 따옴표 안에 \를 넣으면 된다.
offset - 자바의 String 을 char 의 배열로 접근 할 수 있었던 것 처럼,
Python 또한 offset 을 가지고있다. 각각의 문자 마다 숫자가 붙어있음을 나타내는 방법이다.- 예를들어 문자열 var ="python"을 정의했다면, 왼쪽부터 0, 1, 2, 3, 4, 5 로 호출 할 수 있다.fifth_letter = "YUNHEEE"[4] 를 프린트 하면 E 를 반환한다 .
문자열 Method
- len() : 문자열의 길이를 잰다.
parrot = "ABCDE" print len(parrot) ##output : 5 자바는 str = "ee"; int= str.length();
- lower()
print parrot.lower()
- upper()
print parrot.upper()
- str() : 소괄호 안에 무엇을 넣든, 해당문자를 출력할 수 있는 문자열의 형태로 반환한다. 문자열이 아닌 것들을 문자열로 만든다.
str(2) # 스트링 "2" 로 바꿔준다.
점 표기법 : parrot.upper()
은 문자열 리터럴 과 문자열이 저장된 변수에 사용할 수 있다.
이 메소드(upper, lower)는 문자열에 특화되어있고, 그 외에는 사용하지 않기 때문이다.
하지만 len() 와 str() 는 다른 모든 종류의 개체 - objects 에서도 사용이 가능하다. 함수처럼 호출 한다.
[str 으로 변환]
str() 메소드를 사용하여 문자열이 아닌것들을 문자열로 변경하는것을 명확한 문자열 변환이라고 한다.
print "test" + 123 #이렇게 실행 하면 TypeError 가 발생한다.
print "test"+str(123) #이렇게 실행해야 원하는 값 "test123" 이 출력된다.
[문자열 포맷팅]
파이썬의 문자열은 한 번 생성 되고 난 뒤엔 변경이 불가능하다 (immutable)
하지만 문자열에 유연성을 부여할 방법으로 문자열 포맷팅(String Formatting) 이 있다. 이는 %기호를 사용한다.
print "%s" % (string_variable)
넣고싶은 문자열이 여러개면 여러개의 %s 를 사용한다.
name = raw_input("What is your name?") quest = raw_input("What is your quest?") color = raw_input("What is your favorite color?") print "Ah, so your name is %s, your quest is %s, " \ "and your favorite color is %s." % (name, quest, color)
'Programming' 카테고리의 다른 글
[Java] 문자열 (0) | 2018.03.30 |
---|---|
[Java 문제풀이] String - Anagram (0) | 2018.03.16 |
[Java 문제풀이] Arrays: Left Rotation (0) | 2018.03.10 |
[Java 문제풀이] - 피보나치 (0) | 2018.03.10 |
OOP 객체지향 프로그래밍 (0) | 2017.12.12 |