鱼C论坛

 找回密码
 立即注册
查看: 1065|回复: 5

[已解决]询问代码含义

[复制链接]
发表于 2022-1-21 17:08:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
for i in range(0,19):下面第二行的 t.goto(x1[0][0],x1[0][1]-30*i)是什么意思呢
25C37FA9125E728B233FA30F31382FE8.png
最佳答案
2022-1-21 18:46:02
每次打印出来就懂了
for i in range(0,19):
    t.penup()
    t.goto(x1[0][0],x1[0][1]-30*i)
   #添加
    print( '(' + str(x1[0][0]) + ',' + str(x1[0][1]-30*i) + ')', end ='->')
    
    t.pendown()
    t.goto(x1[1][0],x1[1][1]-30*i)
    #添加
    print( '(' + str(x1[1][0]) + ',' + str(x1[1][1]-30*i) + ')')
打印结果:
(-400,400)->(140,400)
(-400,370)->(140,370)
(-400,340)->(140,340)
(-400,310)->(140,310)
(-400,280)->(140,280)
(-400,250)->(140,250)
(-400,220)->(140,220)
(-400,190)->(140,190)
(-400,160)->(140,160)
(-400,130)->(140,130)
(-400,100)->(140,100)
(-400,70)->(140,70)
(-400,40)->(140,40)
(-400,10)->(140,10)
(-400,-20)->(140,-20)
(-400,-50)->(140,-50)
(-400,-80)->(140,-80)
(-400,-110)->(140,-110)
(-400,-140)->(140,-140)

到这理解了就不用往下看了

可以这样理解
(-400,400)       ...        (400,400)
     ...                                ...
(-400,-400)     ...         (400,-400)
是一张800x800大小的画板

你不是指定了width 和num 吗,这样就确定了你要画的棋盘大小,x1存的是 棋盘左上角坐标 和 右上角坐标, y1村的是棋盘左下角坐标 和 右下角坐标
可以理解为一个大正方形画板里面,靠近左上要画一个小正方形的棋盘,棋盘规格是 num*width x num* width 的正方形
画的时候是贴着画板左上角画的
第一个for是画横线,每画一行间隔30
第二个for画纵线,每画一格间隔30
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2022-1-21 17:09:55 | 显示全部楼层
这是我自己写的,图片是老师写的,但我有点没看明白
import turtle

t = turtle.Pen()
t.width(2)
t.speed(0)

for i in range(18):
    t.penup()
    t.goto(-300,300-i*20)
    t.pendown()
    t.goto(100,300-i*20)
    t.penup()
    t.goto(-270+i*20, 320)
    t.pendown()
    t.goto(-270+i*20, -60)
turtle.done()
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-21 18:35:36 | 显示全部楼层
goto(x, y)是移動到x和y指定的位置的意思。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2022-1-21 18:46:02 | 显示全部楼层    本楼为最佳答案   
每次打印出来就懂了
for i in range(0,19):
    t.penup()
    t.goto(x1[0][0],x1[0][1]-30*i)
   #添加
    print( '(' + str(x1[0][0]) + ',' + str(x1[0][1]-30*i) + ')', end ='->')
    
    t.pendown()
    t.goto(x1[1][0],x1[1][1]-30*i)
    #添加
    print( '(' + str(x1[1][0]) + ',' + str(x1[1][1]-30*i) + ')')
打印结果:
(-400,400)->(140,400)
(-400,370)->(140,370)
(-400,340)->(140,340)
(-400,310)->(140,310)
(-400,280)->(140,280)
(-400,250)->(140,250)
(-400,220)->(140,220)
(-400,190)->(140,190)
(-400,160)->(140,160)
(-400,130)->(140,130)
(-400,100)->(140,100)
(-400,70)->(140,70)
(-400,40)->(140,40)
(-400,10)->(140,10)
(-400,-20)->(140,-20)
(-400,-50)->(140,-50)
(-400,-80)->(140,-80)
(-400,-110)->(140,-110)
(-400,-140)->(140,-140)

到这理解了就不用往下看了

可以这样理解
(-400,400)       ...        (400,400)
     ...                                ...
(-400,-400)     ...         (400,-400)
是一张800x800大小的画板

你不是指定了width 和num 吗,这样就确定了你要画的棋盘大小,x1存的是 棋盘左上角坐标 和 右上角坐标, y1村的是棋盘左下角坐标 和 右下角坐标
可以理解为一个大正方形画板里面,靠近左上要画一个小正方形的棋盘,棋盘规格是 num*width x num* width 的正方形
画的时候是贴着画板左上角画的
第一个for是画横线,每画一行间隔30
第二个for画纵线,每画一格间隔30
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-1-22 13:12:55 | 显示全部楼层
聂嘉辉 发表于 2022-1-21 18:35
goto(x, y)是移動到x和y指定的位置的意思。

谢谢啦,我之前没太表达清楚,我的意思其实是他写的X1【0】【0】指的是哪个坐标呢
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2022-1-22 13:49:29 | 显示全部楼层
翼是孤独 发表于 2022-1-21 18:46
每次打印出来就懂了

打印结果:

谢谢啦,最近诸事不顺,很感谢你打这么多字帮我
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2024-10-6 08:34

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表