test_list = [
	{'data': 1, 'no': 301},
	{'data': 2, 'no': 401},
	{'data': 4, 'no': 201},
	{'data': 6, 'no': 101},
	{'data': 5, 'no': 303}
]

new_list = list(test_list)
# print(new_list)

for match in test_list:
	if match['no'] > 300:
		match['no'] = 'BF'
	else:
		match['no'] = 'BR'

# print(test_list)

new_list[1]['data'] = 7
new_list.pop()

print(test_list)
print(new_list)

为什么结果不一样?

原因: dict()也同样