使用n天周期为学校的课程表生成iCal文件

cycle-calendar-generator的Python项目详细描述


循环日历生成器

PyPI Package StatusTravis CI StatusUpdatesDocumentation StatusCompatible with Python 3.5+

使用n天周期为学校的课表生成iCal文件

如果你是老师或学生,你可能有一个6或7天的周期。 您想将日程输入日历,但日历软件不支持“每N个工作日重复”。 所以你运气不好,对吧?这就是周期日历生成器的用武之地。 你只需要制作一个包含学校日程安排的excel文件,每个老师/学生日程安排的另一个excel文件,剩下的工作由循环日历生成器完成。

安装

^{tt1}$

使用量

  1. 制作一个“日程设置”excel文件
    1. 文件名必须是schedule\u setup.xlsx
    2. 有三张表,分别命名为“周期计时”、“周期日列表”和“年度计划”
    3. “时段计时”表给出每个时段的时段名称/编号、开始时间和结束时间
    4. “周期日列表”工作表列出周期中每一天的名称/编号
    5. “年度计划”表列出了学年中的所有日期和周期中的匹配日期
    6. 日期和时间应采用标准的Excel日期/时间格式
    7. 所有其他数据应采用文本格式,包括数字。
    8. 请参见下面的示例
  2. 为每个想要日程表的用户创建一个excel文件
    1. 文件名应与用户名匹配,并将用于命名输出日历文件。(例如,eric idle的excel文件应命名为“eric idle.xlsx”,并将生成“eric idle.ics”)
    2. 有一张名为“用户计划”的工作表,其中包含用户一个周期的常规计划
    3. 此处的所有数据都应为文本格式
    4. 请参见下面的示例
  3. 将所有文件放入任何文件夹

  4. 按如下方式运行应用程序:

    ^{tt2}$

  5. Schedule iCal文件位于输入Excel文件所在文件夹下的/output文件夹中。

示例

周期计时

Period NumberStart TimeEnd Time
18:009:00
29:0010:00
310:0011:00
411:0012:00
512:0013:00

次可以是24小时或12小时格式。“句号”应为文本格式,而不是数字。

周期日列表

A1B2C3D4E5F6

这里的条目是所有周期日的正式名称。其他工作表中的每个循环日条目都必须与这些值匹配。

年度计划

DateCycle Day
8/31/18A1
9/3/18B2
9/4/18C3
9/5/18D4
9/6/18E5
9/7/18F6

日期可以以任何方式显示,但必须是日期格式。“周期日”列中的条目必须是“周期日”列表中定义的正式周期日。

用户计划

Period NumberA1B2C3D4E5F6
1Grade 8Grade 11Grade 8
2Grade 11Grade 8
3LunchLunchLunchLunchLunchLunch
4Grade 11Grade 8Grade 11
5Grade 8Grade 11

“句号”应为文本格式,而不是数字。第一行中的“周期日”必须是“周期日”列表中定义的正式周期日

测试

对于当前的python版本:
python3 setup.py test
对于版本3.5+
tox

建议使用pyenv安装tox所需的python版本。 pyenv可以使用Homebrew

brew update
brew install pyenv
pyenv install 3.5.6 3.6.6 3.7.0

贡献

我们欢迎您的贡献!有关功能或错误报告的想法,请参阅问题。如果您有兴趣参与此库,请参阅此存储库中contributing.rst文件中有关此操作的详细信息。

学分

这个包是用Cookiecutterelgertam/cookiecutter-pipenv项目模板创建的,基于audreyr/cookiecutter-pypackage

excel文件的读取是通过openpyxl包实现的,而ical文件的读取和写入则使用ics包。

许可证

  • 自由软件:GNU通用公共许可v3

历史记录

0.1.0(2018-08-09)

  • pypi上的第一个版本。

0.1.1-0.1.8(2018-10-18至10-19)

  • 尝试修复travis ci的pypi部署问题

0.2.0(2018-10-19)

  • 程序现在可以作为unix风格的命令行应用程序安装

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java JPA。Eclipselink没有为mySQL提供密码,但它应该提供   我的Servlet和@FormDataParam存在java问题   java将什么作为上下文参数传递到文件I/O方法中?   如果两个值相同,java无法找到其中一个单选按钮   java在变量和方法名中使用下划线   JavaSpringMVC单线程安全?   klazz类的java Arraylist(反射Api)   java如何在数字字符串中查找最频繁的数字?   JavaAPI设计:使数据更易于阅读与强制更多API调用   JavaHadoopMapReduceforGoogleWebGraph   java无法启动gauge API:Runner意外退出   java如何在bluemix上使用ibm工作负载调度器?   拉取一年中某一周特定日期的所有日期   java为什么是我的角节点。js应用程序将图像上传到S3� 邮递员正确上传时的符号?   在不使用任何第三方jar的情况下将文件从本地传输到linux系统(java代码)   java将现有文件夹复制到Eclipse工作区中新创建的项目中   Java中的regex RegExp帮助   当使用“系统”外观时,Java组合框setSelectedItem会出现故障   JavaASM:在类的方法中获取局部变量名和值