스위치#
소개#
Switch 블록은 학생들이 블록 기반 코딩에서 텍스트 기반 코딩으로 전환하는 데 도움을 줍니다. Switch 블록을 사용하면 학생들은 블록 프로젝트 내에서 직접 파이썬 코드를 입력하여 명령, 조건, 값 또는 함수 정의를 작성할 수 있으며, 동시에 프로젝트의 나머지 부분은 블록으로 구성할 수 있습니다. 개별 블록은 해당 파이썬 명령으로 변환할 수도 있습니다.
Python 명령, 메서드 및 연산자를 입력하는 방법을 배우려면 VEXcode AIR Python API를 참조하세요.
Switch 블록에는 Python 코드가 포함되어 있으므로 프로젝트가 예상대로 실행되려면 철자, 구두점 및 들여쓰기가 정확해야 합니다.
다음은 모든 Switch 블록 목록입니다.
블록 전환 — 블록 프로젝트에 Python 코드를 추가합니다.
스택 — 다른 스택 블록과 순차적으로 실행되는 Python 명령을 입력할 공간을 제공합니다.
C 블록 —
if,while, 또는for문과 같은 Python 제어 코드를 입력할 공간을 제공합니다.C 확장 가능 —
if,elif, 또는else와 같이 여러 분기가 있는 Python 제어 코드를 입력할 공간을 제공합니다.Boolean —
True또는False반환하는 Python 코드를 입력할 공간을 제공합니다.Reporter — 값을 반환하는 Python 코드를 입력할 공간을 제공합니다.
Hat — Python 함수를 정의할 공간을 제공합니다.
스택#
스택 블록은 다른 스택 블록과 순차적으로 실행되는 파이썬 명령어를 입력할 수 있는 공간을 제공합니다.
[] :: custom-switch
스택 블록에는 한 줄 또는 여러 줄의 파이썬 코드가 포함될 수 있습니다.
시작 시
[Take off, wait 1 second, then land.]
[drone.take_off(500)] :: custom-switch
[1]초 기다리기
착륙 ▶
C 블록#
C 블록은 if, while, ` for 와 같은 파이썬 제어 코드를 입력할 수 있는 공간을 제공합니다. C 블록 안에 있는 블록은 해당 파이썬 제어 구조의 일부로 실행됩니다.
if [] :: custom-switch
끝
C 블록에서 사용할 수 있는 Python 제어 코드는 다음과 같습니다.
시작 시
[Move with the controller until button 7 is pressed.]
[500] [mm v] 높이로 이륙 ▶
if [while not controller.button7.pressing():] :: custom-switch
컨트롤러로 이동
끝
착륙 ▶
C 확장 가능#
C 확장 가능 블록은 if, elif, 또는 else와 같이 여러 분기가 있는 Python 제어 코드를 입력할 수 있는 공간을 제공합니다. 더하기 화살표를 선택하면 분기를 추가할 수 있습니다.
if [] :: custom-switch-expand
끝
C 확장 가능 블록에서 사용할 수 있는 Python 제어 코드는 다음과 같습니다.
시작 시
[Climb up or down with buttons 5 and 6.]
[500] [mm v] 높이로 이륙 ▶
무한 반복
if [if controller.button5.pressing():] :: custom-switch-expand
[위로 v] 방향으로 상승
else [elif controller.button6.pressing():] :: custom-switch-expand
[아래로 v] 방향으로 상승
else [else:] :: custom-switch-expand
호버링
끝
끝
부울#
Boolean 블록은 True 또는 False반환하는 Python 코드를 입력할 수 있는 공간을 제공합니다. 이 블록은 육각형 입력란을 가진 블록 안에 배치할 수 있습니다.
<[] :: custom-switch>
Boolean 블록에는 Python 조건이 포함될 수 있습니다.
<[controller.button7.pressing()] :: custom-switch>
부울 블록은 논리 연산자도 사용할 수 있습니다.
<[controller.button5.pressing() and controller.button7.pressing()] :: custom-switch>
부울 블록은 비교 연산자를 사용하여 값을 비교할 수 있습니다.
보다 큼:
>미만:
<동일:
==다른 비교 연산자에는
<=,!=, 및>=가 포함됩니다.
<[drone.inertial.get_heading()> 100] :: custom-switch>
시작 시
[Move with the controller until button 7 is pressed.]
[500] [mm v] 높이로 이륙 ▶
<[controller.button7.pressing()] :: custom-switch>까지 반복
컨트롤러로 이동
끝
착륙 ▶
보고자#
Reporter 블록은 값을 반환하는 Python 코드를 입력할 수 있는 공간을 제공합니다. 이 블록은 원형 입력이 있는 블록 내부에 배치할 수 있습니다.
([] :: custom-switch)
리포터 블록에는 값을 반환하는 Python 코드가 포함될 수 있습니다.
([drone.get_altitude()] :: custom-switch)
리포터 블록에서 수학 연산자를 사용할 수 있습니다.
([drone.get_altitude() + 45] :: custom-switch)
시작 시
[Display the altitude after climbing for 3 seconds.]
[500] [mm v] 높이로 이륙 ▶
[위로 v] 방향으로 상승
[3]초 기다리기
화면에 ([drone.get_altitude()] :: custom-switch) 출력 ▶
착륙 ▶
모자#
Hat 블록은 파이썬 함수를 정의하는 공간을 제공합니다. Hat 아래에 붙는 블록들은 해당 함수의 본문이 됩니다.
[] :: hat custom-switch
Hat 블록에 파이썬 함수 정의를 입력하세요. 매개변수는 괄호 안에 넣습니다. 함수에 매개변수가 필요하지 않은 경우 빈 괄호를 사용하세요.
[def function_name(parameter):] :: hat custom-switch
[def take_off_500():] :: hat custom-switch
[Define a custom function using a Hat block.]
[500] [mm v] 높이로 이륙 ▶
시작 시
[take_off_500()] :: custom-switch