python列表中的错误数据
我试图从列表s和_prev_数据计算两个字符串变量之间的差异。为此我 使用数据表单s创建临时变量输出,将输出[0]和_prev_data[]从str转换为int并计算。在对这些数据进行一些操作之后,我将 对上一个数据不进行任何操作。但是,不知何故,s突然变为等于输出并破坏了整个脚本。这是我的密码:python列表中的错误数据,python,list,Python,List,我试图从列表s和_prev_数据计算两个字符串变量之间的差异。为此我 使用数据表单s创建临时变量输出,将输出[0]和_prev_data[]从str转换为int并计算。在对这些数据进行一些操作之后,我将 对上一个数据不进行任何操作。但是,不知何故,s突然变为等于输出并破坏了整个脚本。这是我的密码: def __printCSVRow(self): #Print data to file s = [] for full_label in self.__csv
def __printCSVRow(self): #Print data to file
s = []
for full_label in self.__csv_columns:
v = self.__csv_data[full_label]
if v == None:
v = self.__csv_null
else:
v = str(v)
#if full_label != self.__time_msg:
if len(v) > 10:
v = v[:8]
elif len(v) < 8 and len(v) > 3:
v += "\t"
elif len(v) <= 3:
v += "\t\t"
s.append(v)
output = s
if self.__prev_data: #if __prev_data is not empty
diff = ((int(output[0]) - int(self.__prev_data[0])) // 100000) #calculate the difference
for i in range(1, diff + 1): #Some operations
output[0] = str(self.__msg_count * 100)
self.__msg_count += 1 #increase __msg_count
if self.__file != None: #print to file
print(self.__csv_delim.join(output), file=self.__file)
else:
print(self.__csv_delim.join(output))
else: #if __prev_data is empty
output[0] = str(self.__msg_count) #set output[0] to 0
if self.__file != None: #print to file
print(self.__csv_delim.join(output), file=self.__file)
else:
print(self.__csv_delim.join(output))
self.__msg_count+=1 #increase __msg_count
self.__prev_data = s #set __prev_data == s
output=s仅使名称输出点位于s
如果要将s浅层复制到输出,则do output=s[:]适用于列表等
除此之外,实际上很难遵循程序的逻辑,尤其是那些看起来像线噪声的双下划线…请提供一个示例。