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写地铁的到站的原理简易版的更多相关文章

  1. python【项目】:选课系统【简易版】

    功能要求 角色:学校.学员.课程.讲师要求:1. 创建学校2. 创建课程3. 课程包含,周期,价格,通过学校创建课程4. 通过学校创建班级, 班级关联课程.讲师5. 创建学员时,选择学校,关联班级5. ...

  2. Python写各大聊天系统的屏蔽脏话功能原理

    Python写各大聊天系统的屏蔽脏话功能原理 突然想到一个视频里面弹幕被和谐的一满屏的*号觉得很有趣,然后就想用python来试试写写看,结果还真玩出了点效果,思路是首先你得有一个脏话存放的仓库好到时 ...

  3. python写红包的原理流程包含random,lambda其中的使用和见简单介绍

    Python写红包的原理流程 首先来说说要用到的知识点,第一个要说的是扩展包random,random模块一般用来生成一个随机数 今天要用到ramdom中unifrom的方法用于生成一个指定范围的随机 ...

  4. python自动化测试(2)-自动化基本技术原理

    python自动化测试(2) 自动化基本技术原理 1   概述 在之前的文章里面提到过:做自动化的首要本领就是要会 透过现象看本质 ,落实到实际的IT工作中就是 透过界面看数据. 掌握上面的这样的本领 ...

  5. Python批量合并处理B站视频

    最近想学习后端,又不想花钱,怎么办呢?于是在手机端B站(哔哩哔哩)上面找到了满意的免费视频教程,但是手机端看起来很不方便啊.于是,我通过在手机端缓存下来后,导入到了电脑端,但是我后面了发现两个问题: ...

  6. 【Python】如何基于Python写一个TCP反向连接后门

    首发安全客 如何基于Python写一个TCP反向连接后门 https://www.anquanke.com/post/id/92401 0x0 介绍 在Linux系统做未授权测试,我们须准备一个安全的 ...

  7. 用Python写单向链表和双向链表

    链表是一种数据结构,链表在循环遍历的时候效率不高,但是在插入和删除时优势比较大. 链表由一个个节点组成. 单向链表的节点分为两个部分:存储的对象和对下一个节点的引用.注意是指向下一个节点. 而双向链表 ...

  8. Python写一个自动点餐程序

    Python写一个自动点餐程序 为什么要写这个 公司现在用meican作为点餐渠道,每天规定的时间是早7:00-9:40点餐,有时候我经常容易忘记,或者是在地铁/公交上没办法点餐,所以总是没饭吃,只有 ...

  9. 用python写网路爬虫 PDF高清完整版免费下载 Python基础教程免费电子书 python入门书籍免费下载

    <用python写网路爬虫PDF免费下载>PDF书籍下载 内容简介 作为一种便捷地收集网上信息并从中抽取出可用信息的方式,网络爬虫技术变得越来越有用.使用Python这样的简单编程语言,你 ...

随机推荐

  1. 【十大经典数据挖掘算法】C4.5

    [十大经典数据挖掘算法]系列 C4.5 K-Means SVM Apriori EM PageRank AdaBoost kNN Naïve Bayes CART 1. 决策树模型与学习 决策树(de ...

  2. CSS魔法堂:重拾Border之——不仅仅是圆角

    前言  当CSS3推出border-radius属性时我们是那么欣喜若狂啊,一想到终于不用再添加额外元素来模拟圆角了,但发现border-radius还分水平半径和垂直半径,然后又发现border-t ...

  3. JAVAWEB项目实现验证码中文、英文、数字组合

    验证码基础 一.什么是验证码及它的作用 :验证码为全自动区分计算机和人类的图灵测试的缩写,是一种区分用户是计算机的公共全自动程序,这个问题可以由计算机生成并评判,但是必须只有人类才能解答.可以防止恶意 ...

  4. Gitlab使用总结

    Gitlab日常开发流程 1. 从某一功能分支新建一个自己的开发分支 二. 将master分支clone到本地 mkdir git-test cd git-test\ git clone http:/ ...

  5. python查找指定目录下所有文件,以及改文件名的方法

    一: os.listdir(path) 把path目录下的所有文件保存在列表中: >>> import os>>> import re>>> pa ...

  6. IDCM项目学习笔记

    项目介绍: IDCM:Internet Data center monitoring 网络数据中心监控平台 IRP:Information Resource planing 信息资源规划 1.设置表中 ...

  7. GJM :SqlServer语言学习笔记

    ----------------------------SqlServer RDBMS 关系型数据库管理系统 Row/Record 行 Colimn/Attribute 列 Field/Cell 字段 ...

  8. Linux下三个密码生成工具

    http://code.csdn.net/news/2820879 想出一个难破解且容易记的密码对不是一件简单的事情.在我为电脑设定一个新密码,或者在线注册了一个新的账号,需要输入密码的时候,脑袋就一 ...

  9. Hibernate 参数设置一览表

    Hibernate 参数设置一览表 属性名 用途 hibernate.dialect 一个Hibernate Dialect类名允许Hibernate针对特定的关系数据库生成优化的SQL. 取值 fu ...

  10. Javaweb学习笔记——EL表达式

    一.前言 EL表达式是什么? 简而言之,可以这样理解,EL表达式全名为:Exprexxsion Language,原先是JSTL 1.0为了方便存取数据而定义的语言,到了JSTL 2.0便正式成为标准 ...