Python 如何将非类型转换为int?

Python 如何将非类型转换为int?,python,Python,您好,我得到了2个结果385和3025,但当我想减去这两个结果时,我得到了一个错误,我如何才能将none类型转换为integer您无法从none中获得int值。相反,使用从函数中获得的int值。更改此项: def kareler(x:int,y:int): toplam=0 for i in range(x,y): toplam+=i**2 return toplam def tkareler(x:int,y:int): toplam1=0

您好,我得到了2个结果385和3025,但当我想减去这两个结果时,我得到了一个错误,我如何才能将none类型转换为integer

您无法从
none
中获得int值。相反,使用从函数中获得的int值。更改此项:

def kareler(x:int,y:int):
    toplam=0

    for i in range(x,y):
        toplam+=i**2
    return toplam


def tkareler(x:int,y:int):
    toplam1=0
    for i in range(x,y):
        toplam1+=i

    return toplam1**2


sayi1=print(kareler(1,11))
sayi2=print(tkareler(1,11))

print("Gerekli sayi",sayi2-sayi1) # TypeError: unsupported operand type(s) for -: 'NoneType' and 'NoneType'

if type(sayi1)==None:
    sayi1=int(sayi1)

    print(sayi1)  #  this even not give any result to me
为此:

sayi1=print(kareler(1,11))
sayi2=print(tkareler(1,11))

print
函数返回
None
,而不是您告诉它要打印的内容

print()函数始终返回None。不用打印就说1=kareler(1,11)。哦,好吧,我知道了,非常感谢。这意味着当我想得到整数形式的函数结果时,我不应该写,我应该写函数名并赋值给variableYes;一般来说,您键入的确切内容很重要。:)向一行代码中添加额外的内容通常会改变它的工作方式。
sayi1 = kareler(1,11)
sayi2 = tkareler(1,11)
print(f"{sayi1}/n{sayi2}")