好玩的简单Python代码

Python是一种简单易学的编程语言,适合初学者入门。除了在工作和学习中使用,Python还可以用来编写一些好玩的简单代码,让编程变得有趣起来。在本文中,我们将介绍一些有趣的简单Python代码示例,并展示如何运行这些代码。

甘特图

甘特图是一种流程图,用来展示项目计划的时间线和进度。在Python中,我们可以使用matplotlib库来绘制甘特图。以下是一个简单的Python代码示例,用来绘制一个项目的甘特图:

import matplotlib.pyplot as plt
import numpy as np

tasks = ['Task 1', 'Task 2', 'Task 3', 'Task 4']
start_dates = ['2022-01-01', '2022-01-05', '2022-01-10', '2022-01-15']
end_dates = ['2022-01-03', '2022-01-08', '2022-01-12', '2022-01-20']

fig, ax = plt.subplots()

for i, task in enumerate(tasks):
    start_date = np.datetime64(start_dates[i])
    end_date = np.datetime64(end_dates[i])
    duration = end_date - start_date
    ax.barh(task, duration, left=start_date, height=0.5)

ax.set_xlabel('Date')
ax.set_title('Project Gantt Chart')

plt.show()

运行以上代码,将会生成一个简单的项目甘特图,展示了各个任务的起止时间和持续时间。

旅行图

旅行图是一种用来展示旅行路线和景点的图表。在Python中,我们可以使用networkx库来绘制旅行图。以下是一个简单的Python代码示例,用来绘制一个旅行图:

import networkx as nx
import matplotlib.pyplot as plt

G = nx.DiGraph()

G.add_node('Start')
G.add_node('A')
G.add_node('B')
G.add_node('C')
G.add_node('End')

G.add_edge('Start', 'A', weight=1)
G.add_edge('Start', 'B', weight=2)
G.add_edge('A', 'C', weight=3)
G.add_edge('B', 'C', weight=2)
G.add_edge('C', 'End', weight=1)

pos = nx.spring_layout(G)
nx.draw(G, pos, with_labels=True, node_size=2000, node_color='lightblue', font_size=10, font_weight='bold', edge_cmap=plt.cm.Blues)
labels = nx.get_edge_attributes(G, 'weight')
nx.draw_networkx_edge_labels(G, pos, edge_labels=labels)

plt.title('Travel Graph')
plt.show()

运行以上代码,将会生成一个简单的旅行图,展示了旅行的路线和景点之间的距离。

通过以上代码示例,我们可以看到Python编程不仅可以用于工作和学习中,还可以用来编写一些有趣的代码,如绘制甘特图和旅行图。希望这些简单的代码示例能够激发大家对编程的兴趣,让编程变得更加有趣和有意义。让我们一起享受编程的乐趣吧!