首页 > 解决方案 > var 类型字符串而不是 int

问题描述

为什么案例 1中的 var 类型仍然是str ?不应该是int吗?在情况 2 中,当我不使用该函数时,它会更改为 int。

#CASE 1
num1=str()

def suma():

    num1=int(7)

suma()

print(type(num1)) # <class 'str'>

#CASE 2
num1=str()
num1=7

print(type(num1)) # <class 'int'>

标签: python

解决方案


num1正在显示字符串,因为它是全局变量。

如果要更改num1from 函数的类型suma(),请使用global关键字 as global num1

# your code goes here
#CASE 1
num1=str()

def suma():
    global num1
    num1=int(7)

    print(type(num1)) #<class 'int'>
suma()

print(type(num1)) # <class 'int'>

#CASE 2
num1=str()
num1=7

print(type(num1)) # <class 'int'>

推荐阅读