首先,您犯的错误是变量名称的不同,首先您使用“dictionar”,然后使用“dicionar”使用它们中的任何一个。
除此之外,我猜您面临的问题是类中的变量不是全局的,要解决此问题,您可以做的是将变量声明为全局变量,如下所示:
import os
class sortare:
global dictionar, lista
dictionar = raw_input("Scrie calea catre director: ")
lista = os.listdir(dictionar)
def __init__(self):
lista = os.listdir(dictionar)
for item in lista:
print item
print len(item)
但这不是编写代码的正确方法,您应该在外部请求输入参数,然后只将“lista”作为参数传递给函数,或者您可以在 init 中添加请求输入和计算 lista。
方法一:
import os
class sortare:
def __init__(self, lista):
for item in lista:
print item
print len(item)
dictionar = raw_input("Scrie calea catre director: ")
lista = os.listdir(dictionar)
sortare(lista)
方法二:
import os
class sortare:
def __init__(self):
dictionar = raw_input("Scrie calea catre director: ")
lista = os.listdir(dictionar)
for item in lista:
print item
print len(item)
sortare(lista)