본문 바로가기

파이썬5

파이썬으로 이중연결리스트를 만들어보자! (추가 연산, 탐색 연산) 지난 시간에는 단순연결리스트를 만들어보았습니다. 이번에는 연결이 이중으로 된 이중연결리스트를 만들어보겠습니다. 이중연결리스트의 노드는 자신을 기준으로 다음에 있는 노드가 next 노드, 이전을 prev 노드라고 하겠습니다. 이를 그림으로 그려보면 다음과 같습니다. head node와 tail node 부분을 보면 None이 있는데 head node의 이전이 없어서 None이며, tail node도 다음이 없어서 None으로 표시한 것입니다. 각 노드를 보면 data와 next, prev 총 3가지 속성이 있는 것을 알 수 있습니다. 그래서 Node class에는 3개의 인스턴스 변수가 들어가게 됩니다. 코드로 알아보면 다음과 같습니다. class Node: def __init__(self, data): .. 2023. 1. 29.
파이썬 마인크래프트 : 파이썬을 멀티로 사용하는 방법 얼마전 파이썬으로 마인크래프트가 가능하다는 점을 알고 멀티로도 사용이 가능한지 테스트를 해보았는데 다른 사용자들도 사용이 가능하였습니다. 저는 대부분이 사용하는 스피곳을 이용하여 서버를 열고 라즈베리주스를 통해서 파이썬과 연동시키는 방법으로 멀티 서버를 열었습니다. 연동 과정은 상세히 추후 올리겠습니다. 보통 player class를 많이 사용하는데 entity class를 사용하면 됩니다. 아래 코드는 일반적으로 내가 가고 싶은 방향을 갈때 쓰는 코드입니다. player class 함수를 사용한 것입니다. from mcpi.minecraft import Minecraft # 파이썬과 마인크래프트의 각 축의 괴리값 X_AXIS = 240 Y_AXIS = -78 Z_AXIS = -208 mc = Minec.. 2022. 6. 22.
파이썬 마인크래프트 : 플레이어가 바라보는 방향 마인크래프트에서 F3키를 누르면 대표적으로 위치 정보와 바이옴 정보 등등의 현재 장소에 대한 정보를 표시해줍니다. 이번에는 플레이어가 바라보는 방향을 파이썬 코드로 나타내 보겠습니다. 이때 사용하는 함수는 getDirection 함수입니다. 플레이어가 바라보는 방향을 숫자로 돌려줍니다. 다음의 코드를 실행해보길 바랍니다. from mcpi.minecraft import Minecraft import time mc = Minecraft.create() # 서버와 연결 while True: pos = mc.player.getDirection() # 내가 보는 방향을 벡터로 알려줌 x = round(pos.x, 3) y = round(pos.y, 3) z = round(pos.z, 3) if 0.90 2022. 6. 17.
파이썬 마인크래프트 : 텔레포트 GUI만들기 이전 포스팅에서 다룬 텔레포트와 tkinter 모듈을 사용하여 GUI 창을 통해 마인크래프트의 텔레포트 기능을 만들어보겠습니다. from tkinter import * from mcpi.minecraft import Minecraft X_AXIS = 240 Y_AXIS = -78 Z_AXIS = -208 mc = Minecraft.create() # 서버와 연결 def tp(): """원하는 좌표로 이동""" # x = int(input_x.get()) # y = int(input_y.get()) # z = int(input_z.get()) xyz = [] for val in range(3): # 각 좌표값을 받아옴 temp = int(input_list[val].get()) xyz.append(temp.. 2022. 6. 17.
호기심 파이썬(print 함수) 지난 시간 산술 연산자와 변수에 대해서 학습하였습니다. 지금부터는 개발환경을 파이참으로 변경하겠습니다. pycharm 설치 방법은 여러 블로그에 많이 나와있습니다. 오늘은 눈앞에 값을 볼 수 있게 해주는 print 함수에 대해서 알아보겠습니다. 우리는 3 더하기 4의 결과를 보고 싶습니다. 이럴 때는 다음과 같이 print 함수를 사용합니다. 실행 결과 3 더하기 4의 결과 값이 눈앞에 보이게 되었습니다. print 함수는 위와 같이 한 개의 데이터만 볼 수 있는 것이 아닙니다. 위의 코드처럼 ,(콤마)를 이용하면 여러 개의 데이터의 결과 값을 눈 앞에 볼 수 있습니다. 대신에 주의할 점이 있습니다. ,(콤마)를 이용하면 데이터 사이에 공백이 추가됩니다. 2022. 4. 8.