고급 파이썬 개발 과정
챕터
>
레벨
비동기/대기
메시지 읽기
목표
read() 함수를 사용하여 와인 저장고의 아이템 번호가 올바른지 확인하고 남은 재고를 집계하세요.
와인 저장고에는 여러 개의 와인 병 상자가 있으며, 이들은 위층으로 옮겨져 배급될 예정입니다. 저장실에는 주문이 적힌 메모가 있는 책상들이 있고, 그 옆에는 병이 들어있는 상자들이 있습니다. 각 상자에 들어있는 병의 수가 메모에 적힌 것과 일치하는지 확인하고, 누락된 아이템을 보충해야 합니다.
먼저, 와인실에 있는 느슨한 병들을 모두 가져와서 주문에서 누락된 아이템을 보충할 수 있도록 준비하세요. 와인 병은 세 가지(3) 종류가 있으며, 수집이 완료되면 다음과 같이 변수로 생성합니다: empty_bottles, purple_bottles, yellow_bottles 그리고 각 변수에 수집한 병의 수를 저장하세요.
필드에서 모든 병을 수집한 후, 저장실 내부의 빛나는 X 표시가 있는 곳으로 걸어가 메모 쪽을 바라보세요. read() 함수를 사용하여 팝업을 통해 메모에 적힌 주문 정보를 읽어보세요. write() 함수와 유사하게, read() 함수는 async 함수이므로 코드 작성 전에 await를 사용해야 합니다. 예: await player.read().
메모는 그 아래의 카펫 색상에 따라 색상 코드가 지정되어 있으며, 주문 번호를 확인한 후 해당 색상 코드가 있는 상자 앞의 어두운 X 표시로 걸어가 speak() 함수를 사용하여 각 상자의 내용을 확인하세요. 각 상자에 해당하는 상수는 세 가지(3)로 구성되어 있습니다: green_crate, blue_crate 그리고 red_crate.
각 상자의 내용이 해당 색상의 카펫 메모에 적힌 것과 일치하는지 확인하세요. 상자에 메모에 명시된 누락된 아이템이 있다면 해당 상자에 추가하세요. 변수 empty_missing, purple_missing 그리고 yellow_missing를 생성하고, 누락된 각 아이템의 수를 상자의 내용에 더해 주세요.
변수가 설정되면, place() 함수를 사용하여 누락된 병을 상자에 추가하세요. 예: player.place(empty_missing). 모든 아이템을 설정한 후에는 금색 X 표시로 걸어가 저장되지 않은 남은 병의 총 수를 write() 하여 기록하세요.
코드 에디터에 메시지 초안이 작성될 것이며, 생성한 두 변수의 차이를 계산하여 저장하지 않은 남은 병 각각의 올바른 수를 설정하세요. 예: empty_bottles-empty_missing. 남은 모든 아이템의 합계를 기록하면 레벨을 완료하게 됩니다.