Python 3 类型错误:** 或 pow() 不支持的操作数类型:“str"和“int"

编程入门 行业动态 更新时间:2024-10-14 14:14:51
本文介绍了Python 3 类型错误:** 或 pow() 不支持的操作数类型:“str"和“int"的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧! 问题描述 #Import the module from math import sqrt #Using while loop statement to make the program not finish before the user close the program. while True: #Print out the introduction message, and get the input value to solve the quadratic equation. print("ax^2+bx+c=0의 꼴로 된 방정식을 풀 수 있습니다. a, b, c의 값을 차례대로 입력하세요.") a = input("a를 입력하세요 : ") b = input("b를 입력하세요 : ") c = input("c를 입력하세요 : ") #Define function that checks whether the input values are natural number or negative number def func_num(n): if n[0] == '-': n = -int(n[1:]) else: n = int(n) #Execute the function for the input value a, b, c func_num(a); func_num(b); func_num(c); #This if statement chekcs whether the solution of the quadratic equation going to be real number or imaginary number. if b ** 2 < 4*a*c: solution1 = ((sqrt((b ** 2)-(4*a*c)))-b) / (2*a) solution2 = (-(sqrt((b ** 2)-(4*a*c)))-b) / (2*a) else: square_root = sqrt( -(b**2 - 4*a*c) ) + 1j solution1 = ( (square_root) - b ) / (2*a) solution2 = ( -(square_root) - b ) / (2*a) #Prints out the solution of the quadratic equation. print("정답은 바로바로... {}, {} 이거다!".format(solution1, solution2))

但它给出了一个错误(对于任何输入 a、b、c 是整数):

but it gives an error (for any input a, b, c that are integer):

Python 3 TypeError: unsupported operand type(s) for ** or pow(): 'str' and 'int'

我认为问题与func_num()有关(因为我用数字和字符串进行计算时会出错)

I think the problem is related to func_num() (because that error occurs when I do the calculation with number and strings)

但我还是找不到哪个部分有问题.

But I still can't find which part is wrong.

推荐答案

导致 u type 错误的原因是调用函数后没有存储和更新变量.

The reason giving u type error is you did not store and update the variables after calling the function.

试试

a = func_num(a) b = func_num(b) c = func_num(c)

并修改您的函数以返回 n 因为您只将副本 n 传递给函数

And modify your function to return n because you only passing a copy n into the function

更多推荐

Python 3 类型错误:** 或 pow() 不支持的操作数类型:“str"和“int"

本文发布于:2023-10-28 04:35:21,感谢您对本站的认可!
本文链接:https://www.elefans.com/category/jswz/34/1535537.html
版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。
本文标签:类型   不支持   错误   操作   Python

发布评论

评论列表 (有 0 条评论)
草根站长

>www.elefans.com

编程频道|电子爱好者 - 技术资讯及电子产品介绍!