本文整理汇总了Python中src.household.Household类的典型用法代码示例。如果您正苦于以下问题:Python Household类的具体用法?Python Household怎么用?Python Household使用的例子?那么恭喜您, 这里精选的类代码示例或许可以为您提供帮助。
在下文中一共展示了Household类的15个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的Python代码示例。
示例1: firm__get_parameters_from_file
def firm__get_parameters_from_file(self, args):
import os
from src.bank import Bank
from src.household import Household
from src.firm import Firm
from src.environment import Environment # needed for the bankDirectory
text = "This test checks firm.get_parameters_from_file \n"
self.print_info(text)
#
# INITIALIZATION
#
environment_directory = str(args[0])
identifier = str(args[1])
log_directory = str(args[2])
# Configure logging parameters so we get output while the program runs
logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %H:%M:%S',
filename=log_directory + identifier + ".log", level=logging.INFO)
logging.info('START logging for test firm__get_parameters_from_file in run: %s',
environment_directory + identifier + ".xml")
# Construct firm filename
environment = Environment(environment_directory, identifier)
# get the firm_directory from the environment
firm_directory = environment.firm_directory
# and loop over all firms in the directory
listing = os.listdir(firm_directory)
firmFilename = firm_directory + listing[0]
# generate a household
household = Household()
household.identifier = "test_household"
environment.households.append(household)
# generate a bank
bank = Bank()
bank.identifier = "test_bank"
environment.banks.append(bank)
# generate a firm
firm = Firm()
environment.firms.append(firm)
helper = Helper()
helper.initialize_standard_firm(firm, environment)
firm.get_parameters_from_file(firmFilename, environment)
#
# TESTING
#
# test whether the parameters are read properly
text = "Identifier has been read as follows: \n"
text = text + "Identifier: "
text = text + firm.identifier
text = text + "\n"
text = text + "Productivity: "
text = text + str(firm.parameters["productivity"])
self.print_info(text)
示例2: central_bank__getattr
def central_bank__getattr(self, args):
import os
from src.bank import Bank
from src.central_bank import CentralBank
from src.household import Household
from src.firm import Firm
from src.environment import Environment # needed for the bankDirectory
text = "This test checks central_bank.getattr \n"
self.print_info(text)
#
# INITIALIZATION
#
environment_directory = str(args[0])
identifier = str(args[1])
log_directory = str(args[2])
# Configure logging parameters so we get output while the program runs
logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %H:%M:%S',
filename=log_directory + identifier + ".log", level=logging.INFO)
logging.info('START logging for test central_bank__getattr in run: %s',
environment_directory + identifier + ".xml")
# Construct bank filename
environment = Environment(environment_directory, identifier)
# get the bank_directory from the environment
bank_directory = environment.bank_directory
# and loop over all banks in the directory
listing = os.listdir(bank_directory)
bank_filename = bank_directory + listing[0]
# generate a household
household = Household()
household.identifier = "test_household"
environment.households.append(household)
# generate a firm
firm = Firm()
firm.identifier = "test_firm"
environment.firms.append(firm)
# generate a bank
bank = Bank()
bank.identifier = "test_bank"
environment.banks.append(bank)
# generate a central bank
cb = CentralBank()
cb.identifier = "test_central_bank"
environment.central_bank.append(cb)
#
# TESTING
#
print('Accessing rates through bank.parameters["interest_rate_cb_loans"] :')
print(cb.parameters["interest_rate_cb_loans"])
print("Accessing rates through bank.interest_rate_cb_loans:")
print(cb.interest_rate_cb_loans)
示例3: measurement__set_csv_writer
def measurement__set_csv_writer(self, args):
import os
from src.bank import Bank
from src.household import Household
from src.firm import Firm
from src.environment import Environment
from src.transaction import Transaction
from src.market import Market
from src.runner import Runner
from src.measurement import Measurement
text = "This test checks measurement.set_csv_writer \n"
self.print_info(text)
#
# INITIALIZATION
#
environment_directory = str(args[0])
identifier = str(args[1])
log_directory = str(args[2])
# Configure logging parameters so we get output while the program runs
logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %H:%M:%S',
filename=log_directory + identifier + ".log", level=logging.INFO)
logging.info('START logging for test measurement__set_csv_writer in run: %s',
environment_directory + identifier + ".xml")
# Construct household filename
environment = Environment(environment_directory, identifier)
# Construct a runner
runner = Runner(environment)
# generate a bank
bank = Bank()
bank.identifier = "test_bank"
environment.banks.append(bank)
# generate a firm
firm = Firm()
firm.identifier = "test_firm"
environment.firms.append(firm)
# generate a household
household = Household()
household.identifier = "test_household"
environment.households.append(household)
#
# TESTING
#
import csv
file_new = open("__init__.py", "r")
csv_writer = csv.writer(file_new, lineterminator='\n')
measurement = Measurement(environment, runner)
print("Measurement's csv_writer:")
print(measurement.get_csv_writer())
measurement.set_csv_writer(csv_writer)
print("Measurement's csv_writer:")
print(measurement.get_csv_writer())
示例4: firm__set_state_variables
def firm__set_state_variables(self, args):
import os
from src.bank import Bank
from src.household import Household
from src.firm import Firm
from src.environment import Environment # needed for the bankDirectory
text = "This test checks firm.set_state_variables \n"
self.print_info(text)
#
# INITIALIZATION
#
environment_directory = str(args[0])
identifier = str(args[1])
log_directory = str(args[2])
# Configure logging parameters so we get output while the program runs
logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %H:%M:%S',
filename=log_directory + identifier + ".log", level=logging.INFO)
logging.info('START logging for test firm__set_state_variables in run: %s',
environment_directory + identifier + ".xml")
# Construct firm filename
environment = Environment(environment_directory, identifier)
# get the firm_directory from the environment
firm_directory = environment.firm_directory
# and loop over all firms in the directory
listing = os.listdir(firm_directory)
firmFilename = firm_directory + listing[0]
# generate a household
household = Household()
household.identifier = "test_household"
environment.households.append(household)
# generate a bank
bank = Bank()
bank.identifier = "test_bank"
environment.banks.append(bank)
#
# TESTING
#
# generate a firm
firm = Firm()
environment.firms.append(firm)
helper = Helper()
helper.initialize_standard_firm(firm, environment)
text = "Original state variables:"
print(text)
print(firm.get_state_variables())
text = "New state variables:"
print(text)
firm.set_state_variables({'test': 0.66})
print(firm.get_state_variables())
示例5: bank__set_identifier
def bank__set_identifier(self, args):
import os
from src.bank import Bank
from src.household import Household
from src.firm import Firm
from src.environment import Environment # needed for the bankDirectory
text = "This test checks bank.set_identifier \n"
self.print_info(text)
#
# INITIALIZATION
#
environment_directory = str(args[0])
identifier = str(args[1])
log_directory = str(args[2])
# Configure logging parameters so we get output while the program runs
logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %H:%M:%S',
filename=log_directory + identifier + ".log", level=logging.INFO)
logging.info('START logging for test bank__set_identifier in run: %s',
environment_directory + identifier + ".xml")
# Construct bank filename
environment = Environment(environment_directory, identifier)
# get the bank_directory from the environment
bank_directory = environment.bank_directory
# and loop over all banks in the directory
listing = os.listdir(bank_directory)
bank_filename = bank_directory + listing[0]
# generate a household
household = Household()
household.identifier = "test_household"
environment.households.append(household)
# generate a firm
firm = Firm()
firm.identifier = "test_firm"
environment.firms.append(firm)
# generate the bank
bank = Bank()
environment.banks.append(bank)
helper = Helper()
helper.initialize_standard_bank(bank, environment)
#
# TESTING
#
text = "Original identifier: "
text = text + bank.get_identifier()
print(text)
bank.set_identifier("new_ident")
text = "New identifier: "
text = text + bank.get_identifier()
print(text)
示例6: transaction__add_transaction
def transaction__add_transaction(self, args):
import os
from src.bank import Bank
from src.household import Household
from src.firm import Firm
from src.environment import Environment
from src.transaction import Transaction
text = "This test checks transaction.add_transaction \n"
self.print_info(text)
#
# INITIALIZATION
#
environment_directory = str(args[0])
identifier = str(args[1])
log_directory = str(args[2])
# Configure logging parameters so we get output while the program runs
logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %H:%M:%S',
filename=log_directory + identifier + ".log", level=logging.INFO)
logging.info('START logging for test transaction__add_transaction in run: %s',
environment_directory + identifier + ".xml")
# Construct household filename
environment = Environment(environment_directory, identifier)
# generate a bank
bank = Bank()
bank.identifier = "test_bank"
environment.banks.append(bank)
# generate a firm
firm = Firm()
firm.identifier = "test_firm"
environment.firms.append(firm)
# generate a household
household = Household()
household.identifier = "test_household"
environment.households.append(household)
#
# TESTING
#
print("Creating a transaction")
transaction = Transaction()
print("Assigning values")
transaction.this_transaction("type", "asset", "test_household", "test_firm", 1, 2, 3, 4)
print("Adding the transaction to the books")
transaction.add_transaction(environment)
print("The transaction:")
print(transaction)
print("The firm:")
print(environment.get_agent_by_id("test_firm"))
print("The household:")
print(environment.get_agent_by_id("test_household"))
示例7: market__tatonnement
def market__tatonnement(self, args):
import os
from src.bank import Bank
from src.household import Household
from src.firm import Firm
from src.environment import Environment
from src.transaction import Transaction
from src.market import Market
text = "This test checks market.tatonnement \n"
self.print_info(text)
#
# INITIALIZATION
#
environment_directory = str(args[0])
identifier = str(args[1])
log_directory = str(args[2])
# Configure logging parameters so we get output while the program runs
logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %H:%M:%S',
filename=log_directory + identifier + ".log", level=logging.INFO)
logging.info('START logging for test market__tatonnement in run: %s',
environment_directory + identifier + ".xml")
# Construct household filename
environment = Environment(environment_directory, identifier)
# generate a bank
bank = Bank()
bank.identifier = "test_bank"
environment.banks.append(bank)
# generate a firm
firm = Firm()
firm.identifier = "test_firm"
environment.firms.append(firm)
# generate a household
household = Household()
household.identifier = "test_household"
environment.households.append(household)
#
# TESTING
#
sellers = []
for agent in environment.households:
sellers.append([agent, agent.supply_of_labour])
buyers = []
for agent in environment.firms:
buyers.append([agent, agent.demand_for_labour])
starting_price = 0.0
price = 0.0
market = Market("market")
price = market.tatonnement(sellers, buyers, starting_price, 0.00000001, 0.01, 1.1)
print("Price found through tatonnement:")
print(price)
示例8: firm__get_transactions_from_file
def firm__get_transactions_from_file(self, args):
import os
from src.bank import Bank
from src.household import Household
from src.firm import Firm
from src.environment import Environment # needed for the bankDirectory
text = "This test checks firm.get_transactions_from_file \n"
self.print_info(text)
#
# INITIALIZATION
#
environment_directory = str(args[0])
identifier = str(args[1])
log_directory = str(args[2])
# Configure logging parameters so we get output while the program runs
logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %H:%M:%S',
filename=log_directory + identifier + ".log", level=logging.INFO)
logging.info('START logging for test firm__get_transactions_from_file in run: %s',
environment_directory + identifier + ".xml")
# Construct firm filename
environment = Environment(environment_directory, identifier)
# get the firm_directory from the environment
firm_directory = environment.firm_directory
# and loop over all firms in the directory
listing = os.listdir(firm_directory)
firmFilename = firm_directory + listing[0]
# generate a household
household = Household()
household.identifier = "test_household"
environment.households.append(household)
# generate a bank
bank = Bank()
bank.identifier = "test_bank"
environment.banks.append(bank)
# generate a firm
firm = Firm()
environment.firms.append(firm)
#
# TESTING
#
environment.firms[0].clear_accounts()
print("Printing firm:\n")
print(environment.firms[0])
print("Reading transactions from the config file.\n")
print("Printing firm: \n")
firm.get_transactions_from_file(firm_directory + listing[0], environment)
print(environment.firms[0])
示例9: updater__accrue_interests
def updater__accrue_interests(self, args):
import os
from src.bank import Bank
from src.household import Household
from src.firm import Firm
from src.environment import Environment
from src.transaction import Transaction
from src.market import Market
from src.updater import Updater
text = "This test checks updater.accrue_interests \n"
self.print_info(text)
#
# INITIALIZATION
#
environment_directory = str(args[0])
identifier = str(args[1])
log_directory = str(args[2])
# Configure logging parameters so we get output while the program runs
logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %H:%M:%S',
filename=log_directory + identifier + ".log", level=logging.INFO)
logging.info('START logging for test updater__accrue_interests in run: %s',
environment_directory + identifier + ".xml")
# Construct household filename
environment = Environment(environment_directory, identifier)
# generate a bank
bank = Bank()
bank.identifier = "test_bank"
bank.interest_rate_deposits = 0.05
environment.banks.append(bank)
# generate a firm
firm = Firm()
firm.identifier = "test_firm"
environment.firms.append(firm)
# generate a household
household = Household()
household.identifier = "test_household"
environment.households.append(household)
#
# TESTING
#
model = Updater(environment)
model.__init__(environment)
environment.new_transaction("deposits", "", environment.get_agent_by_id("test_household").identifier, environment.get_agent_by_id("test_bank"),
10.0, environment.get_agent_by_id("test_bank").interest_rate_deposits, 0, -1)
print(environment.get_agent_by_id("test_household"))
print("Accruing interests\n")
model.accrue_interests(environment, 0)
print(environment.get_agent_by_id("test_household"))
示例10: updater__set_model_parameters
def updater__set_model_parameters(self, args):
import os
from src.bank import Bank
from src.household import Household
from src.firm import Firm
from src.environment import Environment
from src.transaction import Transaction
from src.market import Market
from src.updater import Updater
text = "This test checks updater.set_model_parameters \n"
self.print_info(text)
#
# INITIALIZATION
#
environment_directory = str(args[0])
identifier = str(args[1])
log_directory = str(args[2])
# Configure logging parameters so we get output while the program runs
logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %H:%M:%S',
filename=log_directory + identifier + ".log", level=logging.INFO)
logging.info('START logging for test updater__set_model_parameters in run: %s',
environment_directory + identifier + ".xml")
# Construct household filename
environment = Environment(environment_directory, identifier)
# generate a bank
bank = Bank()
bank.identifier = "test_bank"
environment.banks.append(bank)
# generate a firm
firm = Firm()
firm.identifier = "test_firm"
environment.firms.append(firm)
# generate a household
household = Household()
household.identifier = "test_household"
environment.households.append(household)
#
# TESTING
#
model = Updater(environment)
model.model_parameters = {"test": "model parameters"}
print("Model's parameters:")
print(model.get_model_parameters())
print("Changing model's parameters:...")
model.model_parameters = {"new": "model parameters"}
print("Model's parameters:")
print(model.get_model_parameters())
示例11: market__set_amplification
def market__set_amplification(self, args):
import os
from src.bank import Bank
from src.household import Household
from src.firm import Firm
from src.environment import Environment
from src.transaction import Transaction
from src.market import Market
text = "This test checks market.set_amplification \n"
self.print_info(text)
#
# INITIALIZATION
#
environment_directory = str(args[0])
identifier = str(args[1])
log_directory = str(args[2])
# Configure logging parameters so we get output while the program runs
logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %H:%M:%S',
filename=log_directory + identifier + ".log", level=logging.INFO)
logging.info('START logging for test market__set_amplification in run: %s',
environment_directory + identifier + ".xml")
# Construct household filename
environment = Environment(environment_directory, identifier)
# generate a bank
bank = Bank()
bank.identifier = "test_bank"
environment.banks.append(bank)
# generate a firm
firm = Firm()
firm.identifier = "test_firm"
environment.firms.append(firm)
# generate a household
household = Household()
household.identifier = "test_household"
environment.households.append(household)
#
# TESTING
#
market = Market("market_id")
print("Market's amplification:")
print(market.get_amplification())
print("Changing amplification")
market.set_amplification(0.55)
print("Market's amplification:")
print(market.get_amplification())
示例12: helper__initialize_standard_bank
def helper__initialize_standard_bank(self, args):
import os
from src.bank import Bank
from src.household import Household
from src.firm import Firm
from src.environment import Environment
from src.transaction import Transaction
from src.helper import Helper
text = "This test checks helper.initialize_standard_bank \n"
self.print_info(text)
#
# INITIALIZATION
#
environment_directory = str(args[0])
identifier = str(args[1])
log_directory = str(args[2])
# Configure logging parameters so we get output while the program runs
logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %H:%M:%S',
filename=log_directory + identifier + ".log", level=logging.INFO)
logging.info('START logging for test helper__initialize_standard_bank in run: %s',
environment_directory + identifier + ".xml")
# Construct household filename
environment = Environment(environment_directory, identifier)
# generate a bank
bank = Bank()
# bank.identifier = "test_bank"
environment.banks.append(bank)
# generate a firm
firm = Firm()
firm.identifier = "test_firm"
environment.firms.append(firm)
# generate a household
household = Household()
household.identifier = "test_household"
environment.households.append(household)
#
# TESTING
#
helper = Helper()
helper.initialize_standard_bank(bank, environment)
print("Initialized standard bank")
print(bank)
示例13: market__rationing_proportional
def market__rationing_proportional(self, args):
import os
from src.bank import Bank
from src.household import Household
from src.firm import Firm
from src.environment import Environment
from src.transaction import Transaction
from src.market import Market
text = "This test checks market.rationing_proportional \n"
self.print_info(text)
#
# INITIALIZATION
#
environment_directory = str(args[0])
identifier = str(args[1])
log_directory = str(args[2])
# Configure logging parameters so we get output while the program runs
logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %H:%M:%S',
filename=log_directory + identifier + ".log", level=logging.INFO)
logging.info('START logging for test market__rationing_proportional in run: %s',
environment_directory + identifier + ".xml")
# Construct household filename
environment = Environment(environment_directory, identifier)
# generate a bank
bank = Bank()
bank.identifier = "test_bank"
environment.banks.append(bank)
# generate a firm
firm = Firm()
firm.identifier = "test_firm"
environment.firms.append(firm)
# generate a household
household = Household()
household.identifier = "test_household"
environment.households.append(household)
#
# TESTING
#
market = Market("market")
rationed = market.rationing_proportional([["agent1", 5], ["agent2", 7], ["agent3", -3], ["agent4", -4]])
print("Pairs found through proportional rationing:")
print(rationed)
示例14: shock__do_shock
def shock__do_shock(self, args):
import os
from src.bank import Bank
from src.household import Household
from src.firm import Firm
from src.environment import Environment
from src.transaction import Transaction
from src.market import Market
from src.updater import Updater
from src.shock import Shock
text = "This test checks shock.do_shock \n"
self.print_info(text)
#
# INITIALIZATION
#
environment_directory = str(args[0])
identifier = str(args[1])
log_directory = str(args[2])
# Configure logging parameters so we get output while the program runs
logging.basicConfig(format='%(asctime)s %(message)s', datefmt='%m/%d/%Y %H:%M:%S',
filename=log_directory + identifier + ".log", level=logging.INFO)
logging.info('START logging for test shock__do_shock in run: %s',
environment_directory + identifier + ".xml")
# Construct household filename
environment = Environment(environment_directory, identifier)
# generate a household
household = Household()
household.identifier = "test_household"
environment.households.append(household)
#
# TESTING
#
shock = Shock()
print("Starting labour")
print(household.labour)
print("Running do_shock with parameter start")
shock.do_shock(environment, 46, "labour", "start")
print("Current labour")
print(household.labour)
print("Running do_shock with parameter end")
shock.do_shock(environment, 46, "labour", "end")
print("Current labour")
print(household.labour)
示例15: initialize_households_from_files
def initialize_households_from_files(self, household_directory):
from src.household import Household
# this routine is called more than once, so we have to reset the list of households each time
self.households = []
# we list all the files in the specified directory
listing = os.listdir(household_directory)
# and check if the number of files is in line with the parameters
if (len(listing) != self.num_households):
logging.error(" ERROR: number of configuration files in %s (=%s) does not match num_households (=%s)",
household_directory, str(len(listing)), str(self.num_households))
# we read the files sequentially
for infile in listing:
household = Household()
household.get_parameters_from_file(household_directory + infile, self)
# and read parameters to the firms, only to add them to the environment
self.households.append(household)