Python类型错误:^:';浮动';和';int';

Python类型错误:^:';浮动';和';int';,python,typeerror,Python,Typeerror,我写了一个简单的程序,用数值积分近似计算定积分。然而,当谈到为什么我会在标题中出现错误时,我感到困惑。请记住,我已经有一年半没有接触过python了,所以我可能遗漏了一些非常明显的东西,但是如果您能帮助我,我仍然会非常感激:)下面是代码: import math def f(x): f=math.sqrt(1+(6*x+4)^2) return f lbound=int(input("Input lower bound for the integral")) ubound=i

我写了一个简单的程序,用数值积分近似计算定积分。然而,当谈到为什么我会在标题中出现错误时,我感到困惑。请记住,我已经有一年半没有接触过python了,所以我可能遗漏了一些非常明显的东西,但是如果您能帮助我,我仍然会非常感激:)下面是代码:

import math
def f(x):
    f=math.sqrt(1+(6*x+4)^2)
    return f


lbound=int(input("Input lower bound for the integral"))
ubound=int(input("Input upper bound for the integral"))
n=int(input("Input number of intervals"))
dx=((ubound-lbound)/n)
integral=0
for i in range(1,n):
    integral=integral+dx*f(i*dx)

print (integral)
Traceback (most recent call last):
  File "C:\Users\******\Desktop\integrals.py", line 13, in <module>
    integral=integral+dx*f(n*dx)
  File "C:\Users\******\Desktop\integrals.py", line 3, in f
    f=math.sqrt(1+(6*x+4)^2)
TypeError: unsupported operand type(s) for ^: 'float' and 'int'
以下是IDLE在尝试运行代码时提供的完整错误报告:

import math
def f(x):
    f=math.sqrt(1+(6*x+4)^2)
    return f


lbound=int(input("Input lower bound for the integral"))
ubound=int(input("Input upper bound for the integral"))
n=int(input("Input number of intervals"))
dx=((ubound-lbound)/n)
integral=0
for i in range(1,n):
    integral=integral+dx*f(i*dx)

print (integral)
Traceback (most recent call last):
  File "C:\Users\******\Desktop\integrals.py", line 13, in <module>
    integral=integral+dx*f(n*dx)
  File "C:\Users\******\Desktop\integrals.py", line 3, in f
    f=math.sqrt(1+(6*x+4)^2)
TypeError: unsupported operand type(s) for ^: 'float' and 'int'
回溯(最近一次呼叫最后一次):
文件“C:\Users\******\Desktop\integrals.py”,第13行,在
积分=积分+dx*f(n*dx)
文件“C:\Users\******\Desktop\integrals.py”,第3行,在f中
f=数学sqrt(1+(6*x+4)^2)
TypeError:不支持^“float”和“int”的操作数类型

尝试提升到幂次使用时,操作数使用
**
而不是
^

f=math.sqrt(1+(6*x+4)**2)

非常感谢,我没想到会有那么傻!那么python中的“^”操作符是什么呢?@Aris Pap:
^
是不能应用于
浮点的异或操作符。