Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/google-cloud-platform/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 3.x 我正在尝试创建一个程序来计算健身房会员的税费,但有一个错误我无法修复 这是我创建的代码,下面的错误是Python3抛出的,破折号/应该用来除以数字 回溯(最近一次呼叫最后一次): 文件“D:/D/python/tax.py”,第16行,在 税() 文件“D:/D/python/tax.py”,第8行,在tax中 成本=月*100*100/税 TypeError:/:“str”和“function”的操作数类型不受支持_Python 3.x - Fatal编程技术网

Python 3.x 我正在尝试创建一个程序来计算健身房会员的税费,但有一个错误我无法修复 这是我创建的代码,下面的错误是Python3抛出的,破折号/应该用来除以数字 回溯(最近一次呼叫最后一次): 文件“D:/D/python/tax.py”,第16行,在 税() 文件“D:/D/python/tax.py”,第8行,在tax中 成本=月*100*100/税 TypeError:/:“str”和“function”的操作数类型不受支持

Python 3.x 我正在尝试创建一个程序来计算健身房会员的税费,但有一个错误我无法修复 这是我创建的代码,下面的错误是Python3抛出的,破折号/应该用来除以数字 回溯(最近一次呼叫最后一次): 文件“D:/D/python/tax.py”,第16行,在 税() 文件“D:/D/python/tax.py”,第8行,在tax中 成本=月*100*100/税 TypeError:/:“str”和“function”的操作数类型不受支持,python-3.x,Python 3.x,您的代码存在一些问题,可以通过以下几点进行总结: Traceback (most recent call last): File "D:/D/python/tax.py", line 16, in <module> tax() File "D:/D/python/tax.py", line 8, in tax cost = months * 100 * 100/tax TypeError: unsupported operand type(s) for /:

您的代码存在一些问题,可以通过以下几点进行总结:

Traceback (most recent call last):
  File "D:/D/python/tax.py", line 16, in <module>
    tax()
  File "D:/D/python/tax.py", line 8, in tax
    cost = months * 100 * 100/tax
TypeError: unsupported operand type(s) for /: 'str' and 'function'
您创建了一个名为
tax
的函数,然后尝试创建一个同名变量<代码>=用于检查相等性,而不是赋值,因此您从未在第二行中实际创建变量

  • 不要创建与现有函数同名的变量。为了整洁起见,将函数或变量名更改为其他名称。事实上,您对每个错误都使用了相同的名称,这使得这个错误比需要的更复杂

  • 使用
    =
    分配变量,而不是
    =

  • 正如其他人提到的,在尝试使用输入之前,您也没有解析输入。您需要在
    months
    上调用
    int
    ,然后再尝试对其进行计算


您对方法名称和税率都使用tax。调用
cost=months*100*100/tax
时,Python无法确定您想要哪一个

def tax():
    tax == 10
    ... 
第8行应为:

def calculate_tax():
    tax = 10
    membership = {'social' , 'sport'}

    membership = input("please enter the type of membership")
    months = input("please enter number of months overdue")
    if membership == 'sport':
        cost = int(months) * 100 * 100/tax
        print ("the penalty is £",cost)
    elif membership == 'social':
        cost = int(months) * 25 * 100/tax
        print ("the penalty is £",cost)
    else:
        print ("there is not penalty")
现在,您正在尝试将字符串相乘。您需要在这两个位置更改公式


编辑:另外,我不确定你的目的是为了这个公式,但现在它将是m乘以
乘以100两次,然后除以

谢谢你,我没有意识到这会发生,因为我认为python在计算感谢时是从右向左读取的。没问题。我只想提一下,上面的答案是错误的,关于在函数中命名一个与函数相同的变量。例如:
def sum(x):sum=x+2打印(sum)
sum(8)
打印
10
,无错误。
tax
变量的唯一问题是它需要被赋值
tax=10
。谢谢你,这非常有帮助,我不知道会发生这个错误,因为这有助于我的理解,请原谅我的业余想法,因为我正在为GCSE学习python,还没有真正掌握python是的,我很乐意帮忙,@ThePythonAmateur。我遇到了一个问题,因为它是价格。我希望它打印两个小数位来显示价格,但它目前只显示一个小数位
def tax():
    tax == 10
    ... 
cost = int(months) * 100 * 100/tax