python 报错TypeError: 'range' object does not support item assignment,解决方法
贴问题
nums = range(5)#range is a built-in function that creates a list of integers print(nums)#prints "[0,1,2,3,4]" print(nums[2:4])#Get a slice from index 2 to 4 (exclusive); prints '[2,3]" print(nums[2:])#Get a slice from index 2 to the end; prints "[2,3,4]" print(nums[:2])#Get a slice from the start to index 2 (exclusive); prints "[0,1]" print(nums[:])#Get a slice of the whole list ; prints "[0,1,2,3,4]" print(nums[:-1])#Slice indices can be negative; prints "[0,1,2,3]" nums[2:4] = [8,9] # Assign a new sublist to a slice print(nums)#prints "[0,1,8,9,4]"
2.报错的原因:
尝试使用range()
创建整数列表(导致“TypeError: ‘range’ object does not support item assignment”)有时你想要得到一个有序的整数列表,所以range() 看上去是生成此列表的不错方式。然而,你需要记住range() 返回的是“range object”,而不是实际的list 值。
3.解决方法:
将上面例子的代码: nums = range(5)改为nums = list(range(5))