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)) 

python 报错TypeError: 'range' object does not support item assignment,解决方法

原文地址:https://www.cnblogs.com/Davirain/p/8460309.html

时间: 2024-11-10 16:46:18

python 报错TypeError: 'range' object does not support item assignment,解决方法的相关文章

TypeError: 'range' object does not support item assignment处理方法

vectorsum.py#!/usr/bin/env/pythonimport sysfrom datetime import datetimeimport numpy as np # def numpysum(n):# a = np.arange(n) ** 2# b = np.arange(n) ** 3# c = a + b# return c def pythonsum(n): a = range(n) b = range(n) c = [] for i in range(len(a))

TypeError: 'range' object doesn't support item deletion

python 是个逐步迭代开发的过程,他不是向下兼容的,更不是向上兼容,版本不一致,好端端的程序就是不能运行了. 下面是在python 2中能运行,在Python 3中不能运行的代码.其实也很简单.但是这些边边角角的东西着实让人头疼. >>> a=range(10)>>> arange(0, 10)>>> del[a[1]]Traceback (most recent call last):  File "<pyshell#6>&

Python报错:SyntaxError: Non-ASCII character &#39;\xe5&#39; in file的解决方法

SyntaxError: Non-ASCII character '\xe5' in file 原因:Python默认是以ASCII作为编码方式的,如果在自己的Python源码中包含了中文(或者其他的语言,比如小日本的日语……),此时即使你把自己编写的Python源文件以UTF-8格式保存了:但实际上,这依然是不行的. 解决方法:在源码的第一行添加以下语句: # -*- coding: UTF-8 -*-     或者 #coding=utf-8 (注:此语句一定要添加在源代码的第一行) Pyt

关于Python报错:SyntaxError: Non-ASCII character &#39;\xe5&#39; in file的解决方法

Python默认编码错误SyntaxError: Non-ASCII character '\xe5'之解决方法在编写Python时,当使用中文输出或注释时运行脚本,会提示错误信息:SyntaxError: Non-ASCII character '\xe5' in file ******* 解决方法:python的默认编码文件是用的ASCII码,你将文件存成了UTF-8!!!(文件中存在中文或者其他语言,就会出现此问题!)解决办法很简单!!!在文件开头加入: # -*- coding: UTF

Python报错UnicodeDecodeError: ascii codec can t decode byte 0xe0 ...解决方法

用命令(python setup.py install)安装webpy时候总是报错 在网上搜索到的解决方法如下: 1. 这是Python 2 mimetypes的bug 2. 需要将Python2.7/lib/mimetypes.py文件中如下片段注释或删除: try:    ctype = ctype.encode(default_encoding) # omit in 3.x!except UnicodeEncodeError:    pass 补充其它解决办法 解决办法: 在报错的页面添加

python框架Scrapy报错TypeError: &#39;float&#39; object is not iterable解决

原因是:Twisted版本高了. 解决办法: 只要把Twisted库降级到16.6.0即可: 1 pip3 install Twisted==16.6.0 2 3 注:Twisted16.6.0安装后,会自动卸载高版本的Twisted python框架Scrapy报错TypeError: 'float' object is not iterable解决

使用webpack命令打包时,报错TypeError: Cannot read property &#39;presetToOptions&#39; of undefined的解决办法

我只安装了webpack,没有安装webpack-cli,第一次输入webpack打包时,提示 One CLI for webpack must be installed. These are recommended choices, delivered as separate packages: - webpack-cli (https://github.com/webpack/webpack-cli) The original webpack full-featured CLI. We wi

VUE.JS 使用axios数据请求时数据绑定时 报错 TypeError: Cannot set property &#39;xxxx&#39; of undefined 的解决办法

正常情况下在data里面都有做了定义 在函数里面进行赋值 这时候你运行时会发现,数据可以请求到,但是会报错 TypeError: Cannot set property 'listgroup' of undefined 主要原因是: 在 then的内部不能使用Vue的实例化的this, 因为在内部 this 没有被绑定.可以看下 Stackoverflow 的解释: 解决办法: 1.用ES6箭头函数,箭头方法可以和父方法共享变量 2.在请求axios外面定义一下 var that=this 问题

VUE - 使用axios数据请求时数据绑定时 报错 TypeError: Cannot set property &#39;xxxx&#39; of undefined 的解决办法

created() { var that=this axios.get('http://jsonplaceholder.typicode.com/todos') .then(function (res) { // handle success // console.log(res); that.todos = res.data }) .catch(function (error) { // handle error console.log(error); }) .finally(function