python预课03 三元表达式示例,函数定义示例,七段彩码管绘制示例

Posted 战斗小人

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python预课03 三元表达式示例,函数定义示例,七段彩码管绘制示例相关的知识,希望对你有一定的参考价值。

三元表达式

s = \'不下雨\'

if s == \'下雨\':
    print(\'带伞\')
if s == \'不下雨\':
    print(\'不带伞\')

#等效与以下语句
print(\'带伞\' if s == \'下雨\' else \'不带伞\')  # 三元表达式

函数定义

 

def login(username,password):       #定义login函数
    """登陆"""
    name=input("请输入您的用户名: ").strip()   #去除输入字符串前后空格
    pwd=input("请输入你的密码: ").strip()
    if name==username and pwd == password:
        print(\'登陆成功\')
    else:
        print(\'登陆失败\')
username=\'sean\'
password=\'123\'
login(username,password)            #使用login函数

七段彩码管绘制

 

import turtle
import time

t = turtle.Pen()
t.shape(\'turtle\')
t.speed(0)              #设定画笔为最快速度

def drawgap():          #定义画笔腾空移动函数
    t.up()
    t.fd(10)
    t.down()

def drawline(flag):     #定义画一条直线,然后向右转函数;flag判断如果数字需要则画线,反之则仅移动
    drawgap()           #调用画笔腾空函数,模拟晶体管显示效果
    if flag:
        t.down()
    else:
        t.up()
    t.fd(40)
    drawgap()
    t.right(90)         #右转90度,准备画下一笔

def drawdigit(num):     #定义画数字的函数,根据每一部分判断是否需要画线进行绘制数字
    t.down()
    drawline(True) if num in [2, 3, 4, 5, 6, 8, 9] else drawline(False)
    drawline(True) if num in [0, 1, 3, 4, 5, 6, 7, 8, 9] else drawline(False)
    drawline(True) if num in [0, 2, 3, 5, 6, 8, 9] else drawline(False)
    drawline(True) if num in [0, 2, 6, 8] else drawline(False)
    t.left(90)
    drawline(True) if num in [0, 4, 5, 6, 8, 9] else drawline(False)
    drawline(True) if num in [0, 2, 3, 5, 6, 7, 8, 9] else drawline(False)
    drawline(True) if num in [0, 1, 2, 3, 4, 7, 8, 9] else drawline(False)
    t.up()
    t.left(180)         #移动到下一个数字开始位置
    t.fd(20)

def write_data(data):   #定义写日期函数
    for i in data:
        if i == \'/\':
            t.write(\'\', font=("Arial", 20, "normal"))  #定义字体,大小,字体类型
            t.pencolor(\'green\')     #改变画笔颜色
        elif i == \'-\':
            t.write(\'\', font=("Arial", 20, "normal"))
            t.pencolor(\'blue\')      #改变画笔颜色
            t.up()
            t.fd(40)
            t.down()
        elif i == \'+\':
            t.write(\'\', font=("Arial", 20, "normal"))
        else:
            drawdigit(int(i))       #画处晶体管数字

def write_programmersday():         #定义绘制程序员日快乐函数
    t.goto(-140, 100)
    t.pencolor(\'black\')
    t.write(\'程序员日快乐!\', font=("Arial", 40, "normal"))

def main():                         #定义主函数
    turtle.setup(900, 600)          #设定初始窗口大小
    data = time.strftime(\'%Y/%m-%d+\', time.gmtime())    #格式化时间表示
    t.up()
    t.backward(300)
    t.down()
    t.pencolor(\'red\')
    t.pensize(5)                    #设定画笔粗细
    write_data(data)                #调用写日期函数
    write_programmersday()          #调用绘制程序员日快乐函数
    t.hideturtle()                  #隐藏画笔

main()                              #调用主函数
turtle.mainloop()                   #画布窗口保持

 

以上是关于python预课03 三元表达式示例,函数定义示例,七段彩码管绘制示例的主要内容,如果未能解决你的问题,请参考以下文章

python预课02 time模块,文本进度条示例,数字类型操作,字符串操作

三元表达式递归匿名与内置函数

python全栈开发-Day12 三元表达式函数递归匿名函数内置函数

三元表达式列表推导式生成器表达式递归匿名函数内置函数

三元表达式列表推导式生成器表达式递归匿名函数内置函数

三元表达式列表推导式生成器表达式递归匿名函数内置函数