23. 09. 09
중간중간 틀린 것이나, 헷갈리는 것, 알아둬야할 만한 것들만 기록 해두겠다
다음 코드를 실행한 후, 2018과 "2018"을 입력했을 경우 알맞은 실행결과는?
>>> <class 'str'>, <class 'str'>
#파이썬에서 input 은 사용자로부터 입력받은 값을 문자열(str) 형태로 반환한다.
다음 코드의 결과값은?
>>> [1,2,3,4] none
여기서 유념해야할 점은 sort() 이다. 파이썬에서 sort() 함수는 리스트를 정렬하는 기능을 수행한다. 이 때, sort() 함수는 원본 리스트 자체를 변경하고, 반환 값은 없다. 이런 종류의 함수를 우리는 'in-place' 함수라고 부른다. 'in-place' 라는 말은 "원래 위치에서" 라는 뜻으로, 원본 데이터 자체를 변경하며 별도로 새로운 데이터를 만들지 않는다.
따라서 .sort() 메소드가 원본 리스트에 대한 정렬 작업을 수행한 후에는 특정 값을 반환하지 않기 때문에 (즉 '결과'가 없기 때문에), 파이썬은 이 상황을 표현하기 위해 '아무 것도 없음'을 의미하는 특수한 값인 None을 사용한다.
>>>['Korea', 'Japan', 'China', ['Seoul', [2, 3], 'Beijing']]
일단
country[3][1]= index[1:] 은
country[3][1]의 값을 index[1:] 로 바꾸라는 뜻이다.
그리고 index[1:] 처럼 리스트 값을 반환할때, 리스트형태로 반환한다는걸 간과하지말자
>>>true
>>>false
일단... 명령프롬프트에서 실행한 파이썬, 그리고 파이썬의 이론적으론,, ture, false가 나오고 그 이유는
파이썬에서는 -5부터 256까지의 정수는 미리 할당되어 있고, 이 범위 내의 숫자들은 동일한 객체를 참조한다. 따라서 a=1과 b=1에서 a와 b는 같은 객체를 참조하므로 a is b는 True를 반환한다.
반면에, 256을 초과하는 정수(예: 300)에 대해서는 각각 별도의 객체가 생성된다. 따라서 a=300과 b=300에서 a와 b는 값은 같지만 서로 다른 객체를 참조하므로 a is b는 False를 반환한다.
# is 는 메모리의 주소를 비교하는 연산이고, ==은 단순 값만 비교하는 연산임을 기억하자
'Python 독학 > python 기본' 카테고리의 다른 글
The Basics of Python Chapter04-반복문 (0) | 2023.09.12 |
---|---|
The Basics of Python Chapter04-조건문 (0) | 2023.09.11 |
The Basics of Python Chapter03 (05), (0) | 2023.09.05 |
The Basics of Python Chapter03 (01~04) (1) | 2023.09.05 |
The Basics of Python Chapter 01~02 (0) | 2023.08.30 |