새로운 질문 13
다음 코드의 예상 결과는 무엇인가요?
설명
전송한 코드 조각은 목록 이해력을 사용하여 기존 목록에서 새 목록을 만들려고 시도하고 있습니다. 코드는 다음과 같습니다:
my_list = [1, 2, 3, 4, 5] new_list = [x > 5이면 my_list의 x에 대해 x]
이 코드는 숫자 1, 2, 3, 4, 5가 포함된 "my_list"라는 목록을 만드는 것으로 시작합니다. 그런 다음 목록 이해력을 사용하여 "new_list"라는 새 목록을 만들려고 시도합니다. 목록 이해는 각 요소에 특정 표현식이나 조건을 적용하여 기존 목록에서 새 목록을 만드는 간결한 방법입니다. 목록 컴프리헨션의 구문은 다음과 같습니다:
new_list = [if 조건에서 old_list의 요소에 대한 표현식]
표현식은 새 목록에 추가될 값으로, 요소와 동일하거나 수정된 버전일 수 있습니다. 요소는 이전 목록에서 각 값을 가져오는 변수입니다. 조건은 새 목록에 포함할 요소를 결정하는 선택적 필터입니다. 예를 들어, 다음 목록 이해는 이전 목록에서 짝수의 제곱을 포함하는 새 목록을 만듭니다:
old_list = [1, 2, 3, 4, 5, 6] new_list = [x ** 2 for x in old_list if x % 2 == 0] new_list = [4, 16, 36]보내주신 코드는 이전 목록에서 5보다 큰 요소를 포함하는 새 목록을 만들려고 합니다. 하지만 이 코드에 문제가 있습니다. 문제는 이전 목록의 요소 중 5보다 큰 요소가 없기 때문에 조건이 항상 거짓이라는 것입니다. 즉, 새 목록은 비어 있고 표현식은 절대 평가되지 않습니다. 그러나 이 표현식은 변수 x를 정의하지 않고 사용하기 때문에 유효하지 않습니다. 이로 인해 현재 범위에서 변수 이름을 찾을 수 없을 때 발생하는 오류인 NameError 예외가 발생합니다. 이 코드는 예외를 처리하지 않으므로 오류 메시지와 함께 종료됩니다.
코드가 실행되지 않는 표현식에서 정의되지 않은 변수를 사용하려고 하기 때문에 코드의 예상 결과는 처리되지 않은 예외입니다. 따라서 정답은 D입니다. 이 코드는 처리되지 않은 예외를 발생시킵니다.
새로운 질문 16
코드 상자를 올바른 위치에 삽입하여 사용자에게 실수 값을 요청하고 이를 질량 변수에 할당하는 코드 줄을 작성합니다.
(참고: 일부 코드 상자는 사용되지 않습니다.)
설명
사용자에게 실수 값을 요청하고 이를 질량 변수에 할당하는 코드 줄을 작성하기 위해 코드 상자를 올바른 위치에 삽입하는 한 가지 가능한 방법은 다음과 같습니다:
mass = float(input("질량을 입력하세요:
이 코드 줄은 입력 함수를 사용하여 사용자에게 문자열 값을 입력하라는 메시지를 표시한 다음 float 함수를 사용하여 해당 문자열 값을 부동 소수점 숫자로 변환합니다. 그런 다음 그 결과를 변수 질량에 할당합니다.
파이썬의 입력 및 실수 함수에 대한 자세한 내용은 다음 참조에서 확인할 수 있습니다:
[파이썬 입력() 함수]
[파이썬 float() 함수]
새 질문 19
다음 중 두 개의 인수를 사용하여 호출할 수 있는 함수는?
설명
보내드린 코드 조각은 파이썬에서 네 가지 함수를 정의하고 있습니다. 함수는 특정 작업을 수행하는 코드 블록으로 프로그램에서 재사용할 수 있습니다. 함수는 함수가 호출될 때 함수에 전달되는 값인 인수를 0개 이상 받을 수 있습니다. 함수는 Python의 기본 반환 값인 값 또는 None을 반환할 수도 있습니다.
파이썬에서 함수를 정의하려면 def 키워드 뒤에 함수 이름과 괄호를 사용합니다. 괄호 안에는 함수가 허용할 매개변수의 이름을 지정할 수 있습니다.
괄호 뒤에 콜론을 사용한 다음 함수 문이 포함된 코드 블록을 들여쓰기합니다. 예를 들어
def function_name(parameter1, parameter2): 함수 반환값의 # 문 파이썬에서 함수를 호출하려면 함수 이름 뒤에 괄호를 사용합니다. 괄호 안에 함수가 예상하는 인수의 값을 전달할 수 있습니다. 키워드 인자나 기본값을 사용하지 않는 한 인자의 수와 순서는 함수 정의에 있는 매개변수의 수와 순서와 일치해야 합니다. 예를 들어
함수_이름(인수1, 인수2)
전송한 코드 스니펫은 다음과 같습니다:
A) def my_function(): print("Hello")
B) def my_function(a, b): return a + b
C) def my_function(a, b, c): return a * b * c
D) def my_function(a, b=0): return a - b
이 질문은 두 개의 인수를 사용하여 호출할 수 있는 함수가 무엇인지 묻는 것입니다. 즉, 함수의 정의에 두 개의 매개변수가 있거나 기본값이 있는 매개변수와 없는 매개변수가 있어야 합니다.
기본값은 함수가 호출될 때 인수가 지정되지 않은 경우 매개변수에 할당되는 값입니다. 예를 들어 옵션 D에서 매개변수 b의 기본값은 0이므로 하나 또는 두 개의 인수를 사용하여 함수를 호출할 수 있습니다.
이 기준을 충족하는 유일한 옵션은 옵션 B입니다. 옵션 B의 함수는 두 개의 매개변수 a와 b를 가지며 그 합계를 반환합니다. 이 함수는 5를 반환하는 my_function(2, 3)과 같이 두 개의 인수를 사용하여 호출할 수 있습니다.
다른 옵션은 두 개의 인수를 사용하여 호출할 수 없습니다. 옵션 A에는 매개 변수가 없으므로 "Hello"를 출력하는 my_function()과 같이 인수가 없는 경우에만 호출할 수 있습니다. 옵션 C에는 a, b, c의 세 개의 매개 변수가 있으며 그 곱을 반환합니다. 이 함수는 24를 반환하는 my_function(2, 3, 4)와 같이 인수가 3개일 때만 호출할 수 있습니다. 옵션 D는 기본값이 있는 매개변수 b와 없는 매개변수 a가 하나씩 있으며, 이 둘의 차액을 반환합니다. 이 함수는 각각 2 또는 -1을 반환하는 my_function(2) 또는 my_function(2, 3)과 같이 하나 또는 두 개의 인수를 사용하여 호출할 수 있습니다.
따라서 정답은 B. 옵션 B입니다.
새 질문 21
리터럴을 끌어다 놓아 데이터 유형 이름과 일치시킵니다.
설명
리터럴을 끌어다 놓아 데이터 유형 이름과 일치시키는 방법도 있습니다:
STRING: "모든 왕의 남자"
BOOLEAN: False
정수: 42
float: -6.62607015e-34
리터럴은 파이썬 인터프리터가 해석하도록 의도한 대로 정확하게 쓰여진 값입니다. 데이터 타입은 몇 가지 공통된 특성이나 연산을 공유하는 값의 범주입니다. 파이썬에는 네 가지 기본 데이터 유형이 있습니다:
문자열, 부울, 정수 및 부동 소수점.
문자열은 작은따옴표 또는 큰따옴표로 묶인 문자의 시퀀스입니다. 문자열은 텍스트, 기호 또는 텍스트로 표시할 수 있는 기타 모든 정보를 나타낼 수 있습니다. 예를 들어 "All The King's Men"은 소설의 제목을 나타내는 문자열 리터럴입니다.
부울은 참 또는 거짓이 될 수 있는 논리 값입니다. 부울은 비교, 조건 또는 논리 연산의 결과를 나타낼 수 있습니다. 예를 들어 False는 True의 반대를 나타내는 부울 리터럴입니다.
정수는 양수, 음수 또는 0이 될 수 있는 정숫값입니다. 정수는 개수, 인덱스 또는 분수나 소수가 필요 없는 기타 수량을 나타낼 수 있습니다. 예를 들어 42는 삶, 우주, 모든 것에 대한 답을 나타내는 정수 리터럴입니다.
실수는 소수점 뒤에 분수 부분이 있을 수 있는 숫자입니다. 실수는 측정값, 비율 또는 정밀도나 근사치가 필요한 기타 모든 수량을 나타낼 수 있습니다. 예를 들어
-6.62607015E-34는 과학 표기법으로 플랑크 상수를 나타내는 플로트 리터럴입니다.
파이썬의 리터럴 및 데이터 유형에 대한 자세한 내용은 다음 참조에서 확인할 수 있습니다:
[파이썬 데이터 유형]
[파이썬 리터럴]
[파이썬 기본 구문]
새 질문 22
조건식을 끌어서 놓으면 화면에 *를 출력하는 코드를 얻을 수 있습니다.
(참고: 일부 코드 상자는 사용되지 않습니다.)
설명
조건식을 끌어서 놓아 화면에 *를 출력하는 코드를 얻는 한 가지 방법은 다음과 같습니다:
풀이 0보다 크면
print("*")
엘리프 풀 < 0:
print("**")
else:
print("***")
이 코드는 if, elif, else 키워드를 사용하여 변수 풀의 값을 확인하는 조건문을 만듭니다. 값이 0보다 크거나 작거나 같은지 여부에 따라 이 코드는 화면에 다른 패턴의 별표를 인쇄합니다. 인쇄 기능은 출력을 표시하는 데 사용됩니다. 각 조건에 속하는 코드 블록을 표시하기 위해 코드가 들여쓰기됩니다. 풀의 값이 양수이면 *, 풀의 값이 음수이면 **, 풀의 값이 0이면 ***이 출력됩니다.
조건문과 Python의 인쇄 함수에 대한 자세한 내용은 다음 참조에서 확인할 수 있습니다:
[파이썬 If ... Else]
[파이썬 인쇄 함수]
[파이썬 기본 구문]
새 질문 24
다음 과제가 성공적으로 실행되었다고 가정합니다:
내_목록 - [1, 1, 2, 3]
예외를 발생시키지 않는 표현식을 선택합니다.
(표현식 두 개를 선택합니다.)
설명
전송한 코드 스니펫은 "my_list"라는 변수에 4개의 숫자 목록을 할당하는 것입니다. 코드는 다음과 같습니다:
my_list = [1, 1, 2, 3]
이 코드는 요소 1, 1, 2, 3이 포함된 목록 객체를 생성하고 이를 'my_list' 변수에 할당합니다.
변수 이름을 사용하거나 요소의 인덱스를 사용하여 목록에 액세스할 수 있습니다. 인덱스는 첫 번째 요소의 0에서 시작하여 목록의 길이에서 마지막 요소의 1을 뺀 값까지 올라갑니다. 인덱스는 음수일 수도 있으며, 이 경우 목록의 끝부터 계산됩니다. 예를 들어 my_list[0]은 1을 반환하고 my_list[-1]은 3을 반환합니다.
이 코드는 목록에서 슬라이싱, 연결, 반복 및 멤버십과 같은 일부 작업도 허용합니다.
슬라이싱은 시작 및 끝 인덱스를 지정하여 원래 목록의 하위 목록을 가져오는 데 사용됩니다. 예를 들어 my_list[1:3]은 [1, 2]를 반환합니다. 연결은 + 연산자를 사용하여 두 목록을 결합하는 데 사용됩니다. 예를 들어, my_list + [4, 5]는 [1, 1, 2, 3, 4, 5]를 반환합니다. 반복은 * 연산자를 사용하여 원래 목록을 여러 번 반복하여 새 목록을 만드는 데 사용됩니다. 예를 들어 my_list * 2는 [1, 1, 1, 2, 3, 1, 1, 1, 2, 3]을 반환합니다.
멤버십은 in 연산자를 사용하여 목록에 요소가 있는지 확인하는 데 사용됩니다. 예를 들어, my_list에 2가 있으면 True를 반환하고, 4가 있으면 False를 반환합니다.
사용자가 제공한 표현식은 다양한 방식으로 목록에 액세스하거나 조작하려고 합니다. 그 중 일부는 유효하고 일부는 유효하지 않아 예외가 발생합니다. 예외는 코드가 제대로 실행될 수 없을 때 발생하는 오류입니다. 표현식은 다음과 같습니다:
A). my_list[-10]: 이 표현식은 목록의 인덱스 -10에 있는 요소에 액세스하려고 합니다. 그러나 목록에는 4개의 요소만 있으므로 인덱스 -10은 범위를 벗어납니다. 그러면 IndexError 예외가 발생하고 아무것도 출력되지 않습니다.
B). my_list|my_Li1st | 3| I: 이 표현식은 목록과 다른 피연산자에 대해 비트 단위 OR 연산을 수행하려고 합니다. 비트단위 OR 연산은 두 숫자의 이진 표현을 비교하여 두 숫자의 각 비트 위치에 1이 있는 새 숫자를 반환하는 데 사용됩니다. 예를 들어 3 | 1은 3이 11이고 이진 1이 01이고 11 | 01은 11이므로 3 | 1은 3을 반환합니다. 그러나 목록은 숫자가 아니므로 비트 단위 OR 연산은 목록에 적용할 수 없습니다. 그러면 TypeError 예외가 발생하고 아무것도 출력되지 않습니다.
C). 내 목록 [6]: 이 표현식은 목록의 인덱스 6에 있는 요소에 액세스하려고 합니다. 그러나 목록에는 4개의 요소만 있으므로 인덱스 6은 범위를 벗어납니다. 그러면 IndexError 예외가 발생하고 아무것도 출력되지 않습니다.
D). my_List- [0:1]: 이 표현식은 목록과 하위 목록에 대해 뺄셈 연산을 수행하려고 합니다. 뺄셈 연산은 한 숫자를 다른 숫자에서 빼고 그 차액을 반환하는 데 사용됩니다. 예를 들어 3 - 1은 2를 반환합니다. 그러나 목록은 숫자가 아니므로 뺄셈 연산을 목록에 적용할 수 없습니다. 그러면 TypeError 예외가 발생하고 아무 것도 출력되지 않습니다.
단 두 가지 표현식만 예외를 발생시키지 않습니다. 바로 그것입니다:
B). my_list|my_Li1st | 3| I: 이 표현식은 유효한 Python 코드가 아니지만 목록에 액세스하거나 조작하려는 표현식이 아닙니다. 의미가 없는 문자열일 뿐입니다. 따라서 예외를 발생시키지 않지만 아무 것도 출력하지도 않습니다.
D). my_List- [0:1]: 이 표현식은 슬라이싱 연산을 사용하여 목록의 하위 목록을 가져오는 유효한 Python 코드입니다. 슬라이싱 연산은 시작 또는 끝 인덱스가 범위를 벗어난 경우에도 예외를 발생시키지 않습니다. 빈 목록이나 가능한 가장 가까운 하위 목록만 반환합니다. 예를 들어, my_list[0:10]은 [1, 1, 2, 3]을 반환하고 my_list[10:20]은 []을 반환합니다. my_List- [0:1] 표현식은 끝 인덱스를 제외한 인덱스 0에서 인덱스 1까지의 목록의 하위 목록을 반환합니다. 따라서 [1]을 반환합니다. 이 표현식은 예외를 발생시키지 않으며 [1]을 출력합니다.
따라서 정답은 B. my_list|my_Li1st | 3| I 및 D. my_List- [0:1]입니다.
댓글 남기기