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() #画布窗口保持