【发布时间】:2019-01-11 14:46:42
【问题描述】:
我正在 python 中进行随机排序,但我似乎无法在我的 scramble 方法中使用来自 __init__ 方法的变量 self.fileName。我不知道为什么。
我已经尝试用 fn 完全替换“self”,但是没有定义 self。我试过使用 (self,fn) 但没有任何东西适合 self 参数。
class randomsort:
def __init__(self,fn):
self.fileName = fn
print(self.fileName)
def scramble(self):
tempList =[]
for i in self.fileName:
ran = random.randrange(0,len(self.fileName))
tempList.append(self.fileName[ran])
print("-->",tempList)
self.fileName = tempList
exlist = [1,2,3,4,5,6,7,8,9,10]
randomsort.scramble(exlist)
预期的输出是列表的未排序版本,但输出是:
AttributeError: 'list' 对象没有属性 'fileName'
【问题讨论】: