我有一个大学时间表安排问题,我正在尝试用遗传算法解决。我想知道这个问题的最佳编码类型,这也可以帮助我满足一些约束。对于这个问题,时间表将具有以下结构,
现在,时间表看起来像这样,(图中有多个时段,但我只会考虑 5 个时段,而不是将时间表分成这么多时段)
这是只有一个部分的时间表。一张时间表大约包含 25 个部分。
现在,我所做的是将每门课程、其部分及其讲师的数据以如下格式写入一个文件中,
1
Object Oriented Programming
CS-3B
Dr Ali Hassan
,
2
Object Oriented Programming
SE-3A
Dr Ali Hassan
,
3
Remote Sensing and GIS
CS-7F
Dr Tom Baker
Run Code Online (Sandbox Code Playgroud)
为了表示时间表,我制作了这样的文件,
0
1
2 2 9
3 2 9
0
2
2 1 9
3 1 9
0
3
2 5 36
4 1 36
Run Code Online (Sandbox Code Playgroud)
请注意这个问题是之前提出的问题的扩展:How to make Images/PDF of Timetable using Python
我正在开发一个基于算法生成随机时间表的程序。对于该程序的最终输出,我需要将时间表存储在 PDF 文件中。
有多个部分,每个部分必须有自己的时间表/时间表。每个部分可以有多个课程,这些课程的讲座将根据算法分配在周一至周五的不同时段。对于我的时间表,
作为示例,我在下面创建了一个字典,其中键代表部分,项目具有大小为 5x5 的二维数组。该二维数组的每个索引都包含讲座将在该时段进行的课程详细信息。
CS-3B : [['', '', 'DS ', '', 'COaAL '], ['', 'COaAL ', '', 'DS ', 'OOP '], ['DS-L ', 'DS-L ', 'OOP-L ', 'OOP-L ', 'FoM '], ['COaAL-L ', 'COaAL-L ', 'OOP ', '', ''], ['', 'FoM ', 'DE ', '', 'DE ']]
SE-3A : [['', 'OOP-L …Run Code Online (Sandbox Code Playgroud) 我有一个 Python 代码,它创建 HTML 表,然后将其转换为 PDF 文件。这是我目前得到的输出
该图像取自正在生成的 PDF 文件(缩小了 55%)
我想让这个看起来更好。类似的东西,如果我可以的话
该图像有 13 列,我不想要这样。我想保留 5 列td,但我主要关心的是HTML 文件中的大小。它太小了width,这就是为什么每个文本也都堆积得很厉害td。但如果你看另一张图像,文本会更加明显,并且框的宽度要大得多。此外,它也不会遇到高度问题(盒子的高度是这样的,它覆盖了整个PDF页面,并且所有的tds看起来都不像stretched down)
我尝试td在 HTML 文件中调整我的高度和宽度,但不幸的是,似乎没有什么真正适合我。
编辑:使用 提供的代码onkar ruikar,我能够取得非常好的结果。然而,它造成了我之前遇到的同样的问题。这里提出了这个问题:Horizontally merge and split cells in an HTML Table for Timetable based on the Data in Python File
我更改了template.html我的文件,然后运行相同的代码。但我得到了这个结果
正如您所看到的,周一第一时段有不止一个讲座,因此,它与两门课程重叠。<hr>现在无法正确读取此 HTML 文件中的命令。
修改后的template.html文件有这样的代码,
<!DOCTYPE html>
<html>
<header>
<style>
.new-page {
page-break-before: always;
}
.center …Run Code Online (Sandbox Code Playgroud) jinja2 ×2
pdfkit ×2
algorithm ×1
css ×1
encoding ×1
html ×1
html-table ×1
np-complete ×1
np-hard ×1
python-3.x ×1
timetable ×1