목록Programing Language/Python (17)
완숙의 블로그
C++과 약간의 차이를 기억해야 하는데, 가장 핵심적인 것은 OR, AND 를 그대로 갖다 쓴다는 것이다. C++에서는 각각 && , || 로 사용했는데, 이것을 AND, OR 로 사용하면 된다. 문자열에서 특정 문자 갯수 세는 프로그램 개발하기 def calcCharacterFromString(sentence, inputChar): numChs = sentence.count(inputChar) return numChs sentence = 'Mary had a little lamb' inputChar = input("Enter the Char : ") calcCharacterFromString(sentence, inputChar)
문자열 할당 nameVar1 = 'Issac' nameVar1 = "Issac" 문자열 기본 연산자, 내장 함수 len() 입력 파라미터로 문자열을 전달 받는다. 길이를 결과값으로 돌려준다. + 두 문자열을 하나로 연결하여 결과값을 돌려준다. * 문자열을 뒤에 곱한 수만큼 반복한 형태의 문자열로 돌려준다. int() 입력 파라미터로 전달받은 문자열이 숫자로만 이루어진 경우 정수타입으로 변경하여 돌려준다. float() 실수 타입으로 바꿔서 돌려준다. 문자열 할당 시 ' 을 사용해야 하는 경우 "" 으로 감싼다. \' 을 사용한다. Print() 함수 print(value, ..., sep=' ', end='\n', file=sys.stdout, f..
우리는 파이썬에서 제공하는 다양한 내장 함수들에 대한 설명을 보고싶을때, help() 함수를 통해 정보를 확인할 수 있었다. 마찬가지로 내가 정의한 함수를 help() 를 통해 설명을 볼 수 있게 하는 것이 좋은 개발자의 방향이다. def convert_to_celsius(fahrenheit): """ (int) -> int #1 Return the celcius number from the given fahrenheit number. #2 >>> Return the celsius(212) #3 100 #4 """ #5 return (fahrenheit - 32) * 5/9 함수를 선언하고 """ 을 써준뒤 주석을 달아준다. 이때, 입력파라미터와 리턴값을 써준다. 함수의 설명을 써준다. 예제를 써준다. ..
파이썬에서 사용하는 변수는 객체를 가리킨다. 여기서 객체란 파이썬에서 사용되는 모든 것 을 의미하는 말이다. 이게 무슨말? 이 개념에 대한 직관적인 설명을 잘해둔 페이지가 있어 여기 소개한다. 객체란? 신기하게도, C 에서 변수를 선언하면 각각 다른 메모리 공간에 상수로 들어갔던 것과 달리 파이썬에서는 같은 객체를 가리킨다. 예제로 직관적 이해를 해보도록 하자. a = 3 먼저 이렇게 선언했을 때, 변수 a는 객체가 저장된 메모리 위치를 가리킨다. 또 오른쪽 3은, 정수 자료형 객체가 자동으로 메모리에 생성된다. 이렇게 보면 변수 a는 객체가 저장된 메모리의 위치를 가리키는 레퍼런스 라고 생각할 수 있다. 그리고 만약 내가 같은 객체를 다른 변수를 통해 가리킨다면, 같다고 뜬다. >>> a = 3 >>>..
문자열 나누기 Pithon -> Python # 잘못된 예 a = "Pithon" a[1] = 'y' 불가능하다. 문자열의 요소값은 바꿀 수 있는 값이 아니다. # 옳은 예 a = "Pithon" a[:1] + 'y' +a[2:] 슬라이싱을 사용하여 새로운 문자열을 만들 수 있다. 또한, 슬라이싱을 할때 마지막 값은 미만으로 인식한다. 이런 방법을 사용하지말고, 기본 메서드를 사용하면 더 쉽게 가능하다. 문자열 관련 함수들 # 문자 개수 세기 a.count('b') # 위치 알려주기 1 a.find('b')# 있으면 처음으로 나온 위치 반환, 없으면 -1 # 위치 알려주기 2 a.index('t')# 있으면 처음으로 나온 위치 반환, 없으면 에러 # 문자열 삽입 a = "," a.join('abcd')#..
발표년도 : 1991 설계자 : Guido van Rossum, 네덜란드 패러다임 : 절차적 프로그래밍, 함수형 프로그래밍, 객체 지향 프로그래밍 초보자부터 전문가까지 사용자층이 넓다. 다양한 플랫폼에서 쓸 수 있다. 라이브러리(모듈)이 풍부하다. 들여쓰기를 사용해서 블록을 구분한다. C/C++ 에 비해 수행 속도가 느리다. 철학 "아름다운게 추한 것보다 낫다." (Beautiful is better than ugly) "명시적인 것이 암시적인 것 보다 낫다." (Explicit is better than implicit) "단순함이 복잡함보다 낫다." (Simple is better than complex) "복잡함이 난해한 것보다 낫다." (Complex is better than complicate..
Class & Instance & Object 직관적인 이해 C를 배워봐서 알겠지만 C에서는 클래스가 없다. 다시말하면 이는 클래스를 개념을 도입하지 않아도 충분히 프로그램을 만들 수 있다는 얘기와 같다. 그렇다면 왜 굳이 이 개념을 차용했을까?귀찮음을 통해 인류문명이 발전했듯이 이 추상적인 개념을 도입한다면 우리가 얻는 이익은 굉장히 많다. 예제를 통해 생각해보자. 클래스는 어찌보면 인류역사에서 중요한 사건인 산업혁명에 비유될 수 있을 듯 하다. 산업혁명은 수공업으로 부터 공업으로 확산된 생산으로부터의 혁명이다. 기존의 제품을 만드는 것은 각각의 상점에서 수공업으로 하나하나의 상품을 만들어왔다. 그런데 만약 이 하나의 상품을 만드는데에 있어서 정해진 방법, 정해진 틀, 클래스가 있다면 어떨까? 예를 들..
for for i in range(1, 100): range 안은 1 이상 100 미만 을 의미함 for i in range (100): 이렇게 써도 같은 문법이다. for i in range (100, 0, -1): 100에서 1 까지 거꾸로 도는 코드 for i in range (1, 100, 2): 2의 배수로 i가 변경되는 코드 연산 // 정수 나눈 몫 % 나머지 / 실수 나누기 and C에서 &&와 같음 or C에서 ||와 같음 int(input()) input을 수로 변경해줌