我的世界&python——扫描到csv文件

前言

之前我们讲了一些关于mc的基本设置,如果有问题先看这里

这部分我们讲一下如何将一棵树扫描成csv文件。
这样做的意义很明显,我们可以在任意一个地方读取这个文件,并创建一个一模一样的树。
也不一定是树,也可以是林地府邸、海底神殿,甚至是迪哥的绿宝石城堡。

csv文件的话,就是用逗号分隔的一个个数据,然后的话,可以第一行有一个每一列的内容,有一点像excel文件。

实现

代码:

"""扫描一定范围内的方块,存入csv文件"""
import mcpi.minecraft as minecraft

mc = minecraft.Minecraft.create()
FILENAME = "tree.csv"
SIZEX = 5
SIZEY = 10
SIZEZ = 5
def scan(FILENAME,originx,originy,originz):
    f = open(FILENAME,"w")
    for y in range(SIZEY):
        # 按照y一层层的切片
        f.write("\n")
        for x in range(SIZEX):
            line = ""
            for z in range(SIZEZ):
                block = mc.getBlock(originx+x,originy+y,originz+z)
                if line:
                    line += ","
                line += str(block)
            f.write(line+"\n")
    f.close()
pos = mc.player.getTilePos()
scan(FILENAME,pos.x-(SIZEX/2),pos.y,pos.z-(SIZEZ/2))

这里我们是以自身为中心,向上10格的位置。

函数内部,首先打开文件,然后一层层的循环,每一层之间用换行分隔。
这里我们使用getblock函数,传入坐标返回方块的id。

最终效果:
在这里插入图片描述

然后的话,这篇博客讲述了如何读取一个csv文件。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值