You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Python Turtle模块:如何打印当前画笔粗细?含调试问题

嘿,我来帮你搞定这个Turtle模块里查看画笔粗细的问题!

如何在Python Turtle中打印当前画笔粗细

先说说你代码里的小问题:while True: print loki.pensize()有两处需要修正的地方:

  1. Python3 里print是函数,必须加上括号,正确写法是print(loki.pensize())
  2. while True会让程序无限循环打印,除非手动终止,这大概率不是你想要的效果——毕竟一直刷屏既没用还会卡住程序

下面给你几种实用的实现方式:

方法一:单次打印当前画笔粗细

如果你只是想在某个特定节点(比如设置完画笔粗细后、绘图中途)查看一次当前粗细,直接调用pensize()方法打印就行,完全不需要循环:

import turtle

# 创建你的画笔实例
loki = turtle.Turtle()

# 先设置一个画笔粗细示例
loki.pensize(5)

# 打印当前画笔粗细
print("当前画笔粗细为:", loki.pensize())

方法二:按键触发实时查看

如果想在绘图过程中随时查看画笔粗细,绑定一个按键触发打印会更实用,比如按下空格键就输出当前值:

import turtle

loki = turtle.Turtle()
loki.pensize(3)

# 定义打印画笔粗细的函数
def print_pensize():
    print(f"当前画笔粗细:{loki.pensize()}")

# 绑定空格键,按下就触发打印
turtle.listen()
turtle.onkey(print_pensize, "space")

# 保持窗口运行,不然程序会直接退出
turtle.done()

运行后你可以随时按空格键查看当前画笔粗细,不会影响正常绘图。

如果你非要用循环(不推荐但满足需求)

如果确实需要用循环实时监控(比如调试时看粗细变化),记得加延迟和事件处理,避免窗口卡死:

import turtle
import time

loki = turtle.Turtle()
loki.pensize(2)

while True:
    print(f"当前画笔粗细:{loki.pensize()}")
    time.sleep(1)  # 每秒打印一次,避免刷屏
    turtle.update()  # 处理Turtle的窗口事件,防止程序无响应

内容的提问来源于stack exchange,提问作者Ian Thomas

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 03:18:38