def numberInputer(prompt, quitflat):
""" prompt: 输入时的提示信息,
quitflag: 退出标识字
"""
while True:
gotter = rawinput(prompt+', "%s" for quit' % quitflag)
if gotter==quitflag:
break
try:
yield int(gotter)
except:
continue
degrees = []
for degree in numberInputer(prompt="请输入考试分数", quitflag="Q"):
degreesappend(degreee)
print "分数中大于60的分数之和", sum(filter(lambda x: x>=60, degrees))
使用 pyserial 就可以处理串口通信,这个包是跨平台的。
>
示例程序在这里:
>import serial
# 创建serial实例
serialport = serialSerial()
serialportport = 'COM1'
serialportbaudrate = 9600
serialportparity = 'N'
serialportbytesize = 8
serialportstopbits = 1
serialporttimeout = 06
try:
serialportopen()
serialportsetDTR(True)
serialportsetRTS(True)
except Exception, ex:
print ex
# 发送数据
serialportwrite(raw_data)
# 根据项目要求,可以开一个线程扫描接收数据
1计算生日是星期几
当你女朋友要过生日了,你肯定要定找家饭店订个餐庆祝一下,餐馆工作日会空一些,周末位置不好定,要是能知道她的生日是星期几就好了,下面这个程序就能搞定~~
比如girl friend 的生日假设是 gf_birthday='2017-3-3'
1)我们先把变量格式化成一个datetime对象
birthday=datetimedatetimestrptime(gf_birthday,'%Y-%m-%d')
2)然后利用datetime里面的函数weekday来得到一个下标
birthdayweekday()
3)构造一个weekdays的列表,根据下标从列表里面取出是周几
weekdays=['Monday','Tuesday','Wednesday','Thursday','Friday','Saturday','Sunday']
weekdays[birthdayweekday()]
当然你要计算比如情人节,圣诞节什么的都可以用上面的程序,或者整个列表把10年的节日都罗列计算一下都是可以了,是不是很简单,对日期的理解有木有加深了一下下
2定时任务
在Python里面,比如你想定期去爬一个网页,或者做运维的同学想每天12点去定时download一个文件,或者定时去扫描一些服务器,甚至老板的需求不停的变可能是,每隔5分钟,或者每小时的整点10分,每周每月都有一些定时任务
用Python怎么破很简单,下面这个程序轻松搞定
我们先从一个最简单的例子说,假设我们是每分种的第10秒,去执行一个任务去打印一下当前的目录
1)window下是dir命令,linux是ls
我们用platform这个模块来判断一下 *** 作系统
import platform
os_platfrom=platformplatform()
if os_platfromstartswith('Darwin'):
print'this is mac os system'
ossystem('ls')
elif os_platfromstartswith('Window'):
print'this is win system'
ossystem('dir')
2)如何定时执行
a我们先获取当前的时间
now=datetimedatetimenow()
假设当前时间是2017-02-09 20:19:47555000
b然后我们输入一个你要定时执行的target时间
比如你是x分10秒的时候执行sched_Timer=datetimedatetime(x,x,x,x,x,10)
前面的x是并不重要(只要最后是10秒就行了),我们就把目标时间设的比当前晚一点即可:
sched_Timer=datetimedatetime(2017,2,9,20,20,10)
c好当时间到了20:20:10的时候要运行我们的程序
如何定时到了呢,很简单用
if now==sched_Timer:
'run Task'
d那么如何让时间在下一分钟10秒继续执行呢,也很简单用timedelta()
datetimetimedelta(minutes=1)把target时间往后增加一分钟
sched_Timer=sched_Timer+datetimetimedelta(minutes=1)
然后外边用个while 死循环hold住就可以了
同样的这个代码也可以扩展,把minutes=1改成hours=1就变成了每个小时定时任务,改成days=1就变成每天的定时任务
以上就是关于怎样用python实现这样一个简单程序全部的内容,包括:怎样用python实现这样一个简单程序、如何用python写个串口通信的程序、如何用Python写一个每分每时每天的定时程序等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)