【问题标题】:How do i create and display my dict as a grid?如何创建我的字典并将其显示为网格?
【发布时间】:2020-01-13 07:31:38
【问题描述】:

我想为显示的赠品字母生成一个带有随机数字的字母网格,最终将在用户试图找出短语时填写。

我的代码:

import string, random
#User Input
title = input("Please Enter A Title For This Puzzle: ") 
phrase = input("Please Enter A Phrase To Be Encoded: ") 
#Numbers get assigned to the letters 
nums = random.sample(range(1, 27), 26)
code = dict(zip(nums, string.ascii_lowercase))

#'Start' of Puzzle for the user  
print (title)
#Giveaway Letters
print (code[3], "is number 3")
print (code[14], "is number 14")
print (code[4], "is number 4")

如您所见,我的 dict 为字母表中的字母分配随机数,我需要创建一个网格来显示这一点。我看过How do i make a grid in python??但我仍然不确定如何将它实现到这个代码中,因此这个问题。

谢谢

【问题讨论】:

  • 你可以使用 pandas 并将它们转换成数据框
  • 你也可以试试tabulate

标签: python


【解决方案1】:

正如 Irfanuddin 所说,如果您使用 Python 笔记本,pandas 会很简单——而且很漂亮。将此 sn-p 添加到您的代码中:

import pandas as pd
df = pd.DataFrame(code, columns=['number', 'letter'])

# print or show
print(df.to_string(index=False)); df.set_index('number')

您需要将 dict 更改为列表: code = list(zip(nums, string.ascii_lowercase))

【讨论】:

  • 当我添加这段代码并运行它时,我得到一个空表,有什么我需要添加的吗?
  • 对于延迟@Dumknight,我真的很抱歉,请查看更新后的答案。
猜你喜欢
  • 2018-11-21
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-10-14
  • 2017-12-09
  • 2017-11-27
  • 1970-01-01
  • 2020-11-14
相关资源
最近更新 更多