簡體   English   中英

如何將隨機生成的變量保存到 Python 中的程序中?

[英]How does one save a randomly generated variable to the program in Python?

在我的代碼中,我對其進行了設置,以便它將隨機分配一個 1-15 的值給玩家。 我想知道如何“保存”相同的值,以便可以在游戲的其他部分使用它來確定整個游戲中的事件和其他內容。

僅供參考,我在前面的代碼中導入了 tkinter、時間和隨機。 下面的代碼也可以正常工作。

print(name + "now gets different points assigned their characteristics.")
print("Characteristic strength is based out of 15.")
print("i.e. 14/15 INTELLIGENCE")
time.sleep(3)

print(name + "'s INTELLIGENCE, ATHLETIC ABILITY, CREATIVITY, COMMUNICATIONS, and LOGIC.")
time.sleep(3)

print("Intelligence")
print(random.choice(intelligence))
time.sleep(2)

print("Athletic Ability")
print(random.choice(athletic_ability))
time.sleep(2)

print("Creativity")
print(random.choice(creativity))
time.sleep(2)

print("Communications")
print(random.choice(communications))
time.sleep(2)

print("Logic")
print(random.choice(logic))
time.sleep(2)

您可以設置范圍數量的列表,然后將其分配給一個值並保存以供以后使用。

import random

intelligence_levels = list(range(1,16,1)) # function range params are start, stop , step where stop number does not included in the list

player_int = random.choice(intelligence_levels)

randomized = []

randomized.append(player_int)

將值分配給變量。 例如: some_variable_name = random.choice(creativity)

如果您想在本地(在您的機器上)存儲變量,以便下次運行程序時,它仍然知道變量的值。 我會推薦pickle或者只是將它們存儲在一個 txt 文件中(簡單的方法)。

import json
import random
import time

value_range = range(1, 16)

def player_entry(name):
        characteristics = {}
        characteristics["Inteligence"] = random.choice(value_range)
        characteristics["Athletic Ability"] = random.choice(value_range)
        characteristics["Creativity"] = random.choice(value_range)
        characteristics["Communications"] = random.choice(value_range)
        characteristics["Logic"] = random.choice(value_range)
        return characteristics


def add_characteristic(player_characteristic, new_characteristic):
        ''' add or update new characteristic '''
        player_characteristic[new_characteristic] = random.choice(value_range)
        return player_characteristic



players_dict = {}
player_name = "Carlos Lewis"
players_dict[player_name] = player_entry(player_name)
print players_dict

list_of_players = ["Paul Eds", "James Ashton", "Ricky Jr."]

for player_name in list_of_players:
        players_dict[player_name] = player_entry(player_name)

print json.dumps(players_dict,indent=4)


# Add new characteristc
print "later..."
print "add Attitude"
players_dict["James Ashton"] = add_characteristic(players_dict["James Ashton"], "Attitude")
print json.dumps(players_dict,indent=4)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM