有没有办法不在python中使用导入json?

2024-05-15 04:49:30 发布

您现在位置:Python中文网/ 问答频道 /正文

不久前我问了一个问题,一个善良的灵魂帮助我解决了这个问题,除了我不允许使用导入json外,还有没有其他方法可以让我去掉它并让代码继续工作,我试着去掉它,但它不起作用。请帮忙!谢谢

import json


suits = ["Clubs", "Diamonds", "Hearts", "Spades"]
values = ["Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King"]
deck = []  # creates an empty List
for s in suits:
    for v in values:
        deck.append(v + " of " + s)

print("Original List: ")
print(json.dumps(deck, indent=4))
print("")

sfuffled_deck = []

count = 0

while len(deck):
    if count%2 == 1:
        sfuffled_deck.append(deck.pop())
    else:
        sfuffled_deck.append(deck.pop(0))
    count+=1

print("Shuffled List: ")
print(json.dumps(sfuffled_deck, indent=4))

Tags: injsonforcountpoplistvaluesprint
3条回答

在线修改:

# import json


suits = ["Clubs", "Diamonds", "Hearts", "Spades"]
values = ["Ace", "2", "3", "4", "5", "6", "7", "8", "9", "10", "Jack", "Queen", "King"]
deck = []  # creates an empty List
for s in suits:
    for v in values:
        deck.append(v + " of " + s)

print("Original List: ")
_ = [print("    " + card) for card in deck]
# print(json.dumps(deck, indent=4))
print("")

sfuffled_deck = []

count = 0

while len(deck):
    if count%2 == 1:
        sfuffled_deck.append(deck.pop())
    else:
        sfuffled_deck.append(deck.pop(0))
    count+=1

print("Shuffled List: ")
_ = [print("    " + card) for card in sfuffled_deck]
# print(json.dumps(sfuffled_deck, indent=4))

你想用json做什么

如果你想显示你的洗牌牌组,只需使用以下命令:

for card in shuffled_deck: print(card)

Json允许您构造数据、保存数据并在以后使用它们。这就是你想做的吗?然后您可以在.txt文件中写入。稍后,您可以打开它,读取它并获取数据,而无需使用json

您需要模拟json.dumps将为您做什么。幸运的是,在这种情况下,它相当简单:

print('[\n' + ',\n'.join([f'    "{x}"' for x in sfuffled_deck]) + '\n]')

使用f字符串添加四个空格和引号,用逗号和换行符连接所有空格和引号,并在所有空格和引号周围添加括号

相关问题 更多 >

    热门问题