Python写地铁的到站的原理简易版
Python地铁的到站流程及原理(个人理解)
今天坐地铁看着站牌就莫名的想如果用Python写其工作原理
是不是很简单就小试牛刀了下大佬们勿喷纯属小弟个人理解
首先来看看地铁上显示的站牌如下:

就想这首先站点固定的名称固定的站点名称长度可知道,这不是符合列表嘛[第一站,第二站,。。。,最后一站]
把这写站名放入列表中一个for循环自动帮你取每个站名 你可以加入time.sleep来设置每个站的之间的时间,
过长江隧道的时间可以单独加个if判断站名改变默认时间就行,这里还可以通过站名判断是否需要转乘等自行脑部扩展等,
好了说了这么多我写了个简易版没加这么多复杂功能把最原始的一条线运作写出来。
#!/usr/bin/env python
# -*- coding:utf-8 -*- import time all_station =[u"金银滩",u"常青花园",u"长港路",u"汉口火车站",u"范湖",u"王家墩东",
u"青年路",u"中山公园",u"徐礼门",u"江汉路",u"积玉桥",
u"螃蟹岬",u"小龟山",u"洪山广场",u"中南路",u"宝通寺",
u"街道口",u"广埠屯",u"虎泉",u"杨家湾",u"光谷广场",]
light = []
for n in range(len(all_station)):
light.append(0)
Count = 0
for station in all_station:
light[Count]=1
print light
if Count==0:
print u"地铁2号线从{}站出发".format(station),
print u"next station 下一站{}".format(all_station[Count + 1])
else:
print u"{}已到站".format(station),
if Count+1==len(all_station):
print u"last station 终点站{}".format(station)
break
time.sleep(3)
print u"next station 下一站{}".format(all_station[Count + 1])
light[Count]=0
time.sleep(3)
Count+=1
import 导入时间模块time
all_station所有站名用列表还有个好处就是后期还可以在扩展延长线路名称
light 表示每个站点下面的等显示这里我简单用0,1判断 0表示默认不亮,1表示到了哪一站亮的灯
第一个for循环是初始化所有的灯也是列表list同样好随着站扩展
接下来for循环是从所有的站点开始循环读取站名等同于地铁到站的流程
Count的设计是来表示计数同时来显示到了哪一站所亮的灯是哪一个
来看看代码最终的效果如下:

由于屏幕有限只能显示这么多。。。。。
Python写地铁的到站的原理简易版的更多相关文章
- python【项目】:选课系统【简易版】
功能要求 角色:学校.学员.课程.讲师要求:1. 创建学校2. 创建课程3. 课程包含,周期,价格,通过学校创建课程4. 通过学校创建班级, 班级关联课程.讲师5. 创建学员时,选择学校,关联班级5. ...
- Python写各大聊天系统的屏蔽脏话功能原理
Python写各大聊天系统的屏蔽脏话功能原理 突然想到一个视频里面弹幕被和谐的一满屏的*号觉得很有趣,然后就想用python来试试写写看,结果还真玩出了点效果,思路是首先你得有一个脏话存放的仓库好到时 ...
- python写红包的原理流程包含random,lambda其中的使用和见简单介绍
Python写红包的原理流程 首先来说说要用到的知识点,第一个要说的是扩展包random,random模块一般用来生成一个随机数 今天要用到ramdom中unifrom的方法用于生成一个指定范围的随机 ...
- python自动化测试(2)-自动化基本技术原理
python自动化测试(2) 自动化基本技术原理 1 概述 在之前的文章里面提到过:做自动化的首要本领就是要会 透过现象看本质 ,落实到实际的IT工作中就是 透过界面看数据. 掌握上面的这样的本领 ...
- Python批量合并处理B站视频
最近想学习后端,又不想花钱,怎么办呢?于是在手机端B站(哔哩哔哩)上面找到了满意的免费视频教程,但是手机端看起来很不方便啊.于是,我通过在手机端缓存下来后,导入到了电脑端,但是我后面了发现两个问题: ...
- 【Python】如何基于Python写一个TCP反向连接后门
首发安全客 如何基于Python写一个TCP反向连接后门 https://www.anquanke.com/post/id/92401 0x0 介绍 在Linux系统做未授权测试,我们须准备一个安全的 ...
- 用Python写单向链表和双向链表
链表是一种数据结构,链表在循环遍历的时候效率不高,但是在插入和删除时优势比较大. 链表由一个个节点组成. 单向链表的节点分为两个部分:存储的对象和对下一个节点的引用.注意是指向下一个节点. 而双向链表 ...
- Python写一个自动点餐程序
Python写一个自动点餐程序 为什么要写这个 公司现在用meican作为点餐渠道,每天规定的时间是早7:00-9:40点餐,有时候我经常容易忘记,或者是在地铁/公交上没办法点餐,所以总是没饭吃,只有 ...
- 用python写网路爬虫 PDF高清完整版免费下载 Python基础教程免费电子书 python入门书籍免费下载
<用python写网路爬虫PDF免费下载>PDF书籍下载 内容简介 作为一种便捷地收集网上信息并从中抽取出可用信息的方式,网络爬虫技术变得越来越有用.使用Python这样的简单编程语言,你 ...
随机推荐
- Eclipse与Android源码中ProGuard工具的使用
由于工作需要,这两天和同事在研究android下面的ProGuard工具的使用,通过查看android官网对该工具的介绍以及网络上其它相关资料,再加上自己的亲手实践,算是有了一个基本了解.下面将自己的 ...
- JavaScript填坑史
说明: 这是笔者平时积累的一些觉得比较有意思或是比较有难度的JavaScript题目理解和心得,会保持长期更新. 1.setTimeout和setInterval深入理解 在setTimeout和s ...
- WindowsCE project missing Microsoft.CompactFramework.CSharp.targets in Visual Studio 2008
00x0 前言 之前在Windows 7系统中开发的WindowsCE项目,最近换成Windows 10系统,需要将项目进行修改,打开项目后提示如下错误: 无法读取项目文件"App.cspr ...
- 自己实现简单的AOP(一)简介
AOP 和 OOP,在我看来是两种相辅相成的技术,作为OOP的补充,AOP 有着自己特殊的应用场景. 假设,我们需要在Service层实现以下几项基本功能: /// <para>1.自动管 ...
- jquery easyui使用(四)······添加,编辑,删除
前端: <div style="font-size: 25px; font-weight: 700; margin: 50px 0 10px 10px;"> 车辆登记 ...
- ROWNUMBER() OVER( PARTITION BY COL1 ORDER BY COL2)用法,先分组,然后在组内排名,分组计算,主表与附表一对多取唯一等
ROWNUMBER() OVER( PARTITION BY COL1 ORDER BY COL2)用法 今天在使用多字段去重时,由于某些字段有多种可能性,只需根据部分字段进行去重,在网上看到了row ...
- 尝试加载 Oracle 客户端库时引发 BadImageFormatException
尝试加载 Oracle 客户端库时引发 BadImageFormatException 工程师给计算机诊断,就像医生给病人诊断一样,很多同样的症状,可能是由多种截然不同的原因导致的. 最近进行C# ...
- EF Core1.0 CodeFirst为Modell设置默认值!
当我们使用CodeFirst时,有时候需要设置默认值! 如下 ; public string AdminName {get; set;} = "admin"; public boo ...
- 【linux草鞋应用编程系列】_1_ 开篇_系统调用IO接口与标准IO接口
最近学习linux系统下的应用编程,参考书籍是那本称为神书的<Unix环境高级编程>,个人感觉神书不是写给草鞋看的,而是 写给大神看的,如果没有一定的基础那么看这本书可能会感到有些头重脚轻 ...
- 【工匠大道】一些Vim(Linux)不常见但很逼格的命令(不断更新中)
本文地址 分享提纲: 1. :Tlist 2. :colorscheme 3. :set cursorline 4. ma 5. vim -x 6. CTRL-] 7. 折叠 8. 向别的用户终端写信 ...