在python中将变量值从一个方法传递到另一个方法
我试图验证用户输入的值,用户输入的值存储在一个方法中,其值验证在另一个方法中完成。但我面临的问题是如何在不同方法之间使用变量值。我们如何在python中做到这一点?我得到一个错误-“userDetailsValidation未定义”这是我的代码:在python中将变量值从一个方法传递到另一个方法,python,list,function,Python,List,Function,我试图验证用户输入的值,用户输入的值存储在一个方法中,其值验证在另一个方法中完成。但我面临的问题是如何在不同方法之间使用变量值。我们如何在python中做到这一点?我得到一个错误-“userDetailsValidation未定义”这是我的代码: from userAccountDatabase import * def userInputs(): userDetails=[] firstName=str(input("Enter First Name").upper()) whi
from userAccountDatabase import *
def userInputs():
userDetails=[]
firstName=str(input("Enter First Name").upper())
while True:
if(userDetailsValidation(firstName, "FirstName", accountDetails))==True:
userDetails.append(firstName)
break
else:
print('Enter valid First Name')
firstName=str(input("Enter First Name").upper())
LastName=str(input("Enter Last Name").upper())
while True:
if(userDetailsValidation(LastName, "LastName", accountDetails))==True:
userDetails.append(LastName)
break
else:
print('Enter valid last Name')
firstName=str(input("Enter Last Name").upper())
dateOfBirth=str(input("Enter date of birth"))
while True:
if(userDetailsValidation(dateOfBirth, "LastName", accountDetails))==True:
userDetails.append(dateOfBirth)
break
else:
print('Enter valid dateOfBirth ')
firstName=str(input("Enter dateOfBirth").upper())
# return firstName,LastName,dateOfBirth
userInputs()
def userDetailsValidation(value, fieldName, database):
print("The account does not exist with the given details,Enter valid First name")
for entry in database:
if fieldName in entry and entry[fieldName] == value:
print("correct value")
return True
else:
return False
def printRequiredUserInfo(FirstName,fieldname,AccountNumber,Accountbalance,Database):
for entry in Database:
if fieldname in entry and entry[fieldname] == FirstName:
print(entry)
printRequiredUserInfo(firstName,"FirstName","Account Number","Account Balance",accountDetails)
在
if(userDetailsValidation(dateOfBirth,“LastName”,accountDetails))中调用userDetailsValidation函数时,仍然无法解析该函数==True:
您可以在userInputs()之前移动userDetailsValidation()的实现,也可以在定义userDetailsValidation()之后移动对userInputs()的调用
关于在一个函数中使用另一个函数中的变量值的问题,您有多种选择
- 将变量声明为全局变量。这样,您就可以在模块内的所有功能中访问它们
- 在类内实现函数并为此类创建成员变量
- 返回感兴趣的变量李>