鱼C论坛

 找回密码
 立即注册
查看: 4415|回复: 2

phython 3定义函数时def标红并出现invalid syntax

[复制链接]
发表于 2019-7-16 11:08:59 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 3191213723 于 2019-7-16 11:08 编辑

phython 3.67(64bit)定义函数出现invalid syntax,这是 mooc  的python程序设计【第5周】函数和代码复用/5.2 实例7: 七段数码管绘制的代码,应该是一个很小的问题,但我改来改去好久都不知道哪里错了
import turtle
def drawLine(draw):#横向单段数码管
    turtle.pendown() if draw else turtle.penup()
    turtle.fd(40)
    turtle.right(90)
def drawdigit(digit):#七段数码管,后续确定位置,画笔路线和顺序已经确定,判断数字后即可确定是否再此处落笔,如果是八就每一步都落笔,零的话就只有第一划横线不落笔
    drawLine(True) if digit in[2,3,4,5,6,8,9] else drawLine(False)
    drawLine(True) if digit in[0,1,3,4,5,6,7,8,9] else drawLine(False)
    drawLine(True) if digit in[0,2,3,5,6,8,9] else drawLine(False)
    drawLine(True) if digit in[0,2,6,8] else drawLine(False)
    turtle.left(90)
    drawLine(True) if digit in[0,4,5,6,8,9] else drawLine(False)
    drawLine(True) if digit in[0,2,3,5,6,7,8,9] else drawLine(False)
    drawLine(True) if digit in[0,1,2,3,4,] else drawLine(False)
    turtle.left(180)
    turtle.penup()
    turtle.fd(20)
def drawdate(date):
    for i in date:
        drawdigit((eval(i))
def main():#上面的都么有问题,只有这行有问题,只是我怕遗漏掉什么
    turtle.setup(800,350,200,200)
    turtle.penup()
    urtle.fd(-300)
    turtle.pensize(5)
    drawdate("20181010")
    turtle.hideturtle()
    turtle.done()
main()
运行时总是最后一个def被标红,弹出提示invalid syntax,我检查了冒号和缩进都没有问题,不知道哪里错了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

 楼主| 发表于 2019-7-16 11:10:21 | 显示全部楼层
只有最后一个def被标红,我又发不了图片,好像这里发帖也标不了字体颜色
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2019-7-16 13:19:23 | 显示全部楼层
问题已解决,我把最后两段都从新输了一遍就好了,虽然标红的是最后一个def,但是根本问题在倒数第二个def,它这个没有定义好,我直接输入到python编译器里都没有反应的,重新输入之后虽然还是不知道哪里错了,不过多半是符号和字母那种难以迅速发现的低级语法错误。
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-1-13 03:08

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

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