首页 > 解决方案 > 我很感激有关此“IndexError:元组索引超出范围”的来源的一些反馈

问题描述

我得到一个IndexError: tuple index out of range.

main.py文件:

import Bank
import Input
balance = Bank.ATM.get_balance()
amongus = str.format("Starting Balance: {:.2f}")
print(amongus)
amount = Input.Validator("Please enter deposit amount ($0.00 - $1000.00): ",0.00,1000.00)
deposit()

Bank.py文件:

class ATM:
    def deposit(amount):
        amongus = str.format("Depositing {:.2f}")
        print(amongus)
        balance = balance + amount
        return balance
    def withdraw(amount):
        if balance >= amount:
            amongus = str.format("Withdrawing {:.2f}")
            print(amongus)
            balance = balance - amount
        else:
            print("Insufficient funds")
            return balance
    def get_balance():
        return balance

balance = 20.00

Input.py文件:

class Validator:
  def get_integer(prompt, min, max):
    while True:
      try:
        inputString = input(prompt)
        inputInt = int(inputString)

        if (inputInt >= min) and (inputInt <= max):
          return inputInt
      except:
         continue
  def get_float(prompt, min, max):
    while True:
      try:
        inputString = input(prompt)
        inputFloat = float(inputString)

        if (inputFloat >= min) and (inputFloat <= max):  # verify range
          return inputFloat
      except:
         continue

我目前使用代码遇到的错误是:

Traceback (most recent call last):
File "main.py", line 4, in <module>
amongus = str.format("Starting Balance: {:.2f}")
IndexError: tuple index out of range

amongus在我想出一个更好的名字之前,我只是用作临时变量名。

标签: pythonpython-3.x

解决方案


您尚未指定要在format语句中插入的内容。您想要做的可能是:

amongus = str.format("Starting Balance: {:.2f}", balance)

推荐阅读