执行此操作时出现语法错误:
p = []
def proc(n):
for i in range(0,n):
C = i
global p.append(C)
执行此操作时出现语法错误:
p = []
def proc(n):
for i in range(0,n):
C = i
global p.append(C)
只需将其更改为以下内容:
def proc(n):
for i in range(0,n):
C = i
p.append(C)
该global
语句只能在函数的最顶部使用,并且仅在分配给全局变量时才需要。如果您只是修改一个可变对象,则不需要使用它。
下面是一个正确用法的例子:
n = 0
def set_n(i):
global n
n = i
如果没有上述函数中的 global 语句,这只会在函数中创建一个局部变量,而不是修改全局变量的值。
问题是您尝试直接打印列表而不是在打印之前转换为字符串,并且由于数组是学生类的成员,因此您需要使用“自我”来引用它。
以下代码有效:
class Student:
array = []
def addstudent(self,studentName):
print("New Student is added "+studentName)
self.array.append(studentName)
print(str(self.array))
def removeStudent(self,studentName):
print("Before Removing the Students from the list are "+ str(self.array))
self.array.remove(studentName)
print("After Removing the students from the list are "+ str(self.array))
if __name__ == '__main__':
studata = Student()
studata.addstudent("Yogeeswar")
studata.addstudent("Linga Amara")
studata.addstudent("Mahanti")
studata.removeStudent("Yogeeswar")