1、源代码

   以下代码执行时会报  range' object does not support item assignment 的错误,问题出现在第17行的runge(10);

import unittest
import random class TestSequenceFunctions(unittest.TestCase): def setUp(self):
#初始化一个递增序列
self.seq = range(10)
def runTest(self):
#从序列seq中随机选取一个元素
element = random.choice(self.seq)
#验证随机元素确实属于列表中
# self.assertTrue(element in self.seq) class TestDictValueFormatFunchions(unittest.TestCase):
def setUp(self):
self.seq = range(10)#这里是出错的地方
def test_shuffle(self):
#随机打乱原seq的顺序
random.shuffle(self.seq)
self.seq.sort()
self.assertEqual(self.seq,range(10))
#验证执行函数是跑出了TypeError异常
self.assertEqual(TypeError,random.shuffle,(1,2,3)) if __name__ == "__main__":
unittest.main()

2、修改后的代码

         在17行的基础上添加list(range(10))就ok了。

错误原因:是python3中range不返回数组对象,而是返回range对象

import unittest
import random class TestSequenceFunctions(unittest.TestCase): def setUp(self):
#初始化一个递增序列
self.seq = range(10)
def runTest(self):
#从序列seq中随机选取一个元素
element = random.choice(self.seq)
#验证随机元素确实属于列表中
# self.assertTrue(element in self.seq) class TestDictValueFormatFunchions(unittest.TestCase):
def setUp(self):
self.seq = list(range(10))#这里是修改过的地方
def test_shuffle(self):
#随机打乱原seq的顺序
random.shuffle(self.seq)
self.seq.sort()
self.assertEqual(self.seq,range(10))
#验证执行函数是跑出了TypeError异常
self.assertEqual(TypeError,random.shuffle,(1,2,3)) if __name__ == "__main__":
unittest.main()

python3中报错:TypeError: 'range' object doesn't support item deletion的更多相关文章

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

    python 是个逐步迭代开发的过程,他不是向下兼容的,更不是向上兼容,版本不一致,好端端的程序就是不能运行了. 下面是在python 2中能运行,在Python 3中不能运行的代码.其实也很简单.但 ...

  2. 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 ...

  3. Python:TypeError: 'range' object doesn't support item deletion

    报错代码: dataIndex = range(m) del (dataIndex[randIndex]) 报错信息: 错误原因: python3 range返回的是range对象,不是数组对象 解决 ...

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

    vectorsum.py#!/usr/bin/env/pythonimport sysfrom datetime import datetimeimport numpy as np # def num ...

  5. TypeError: 'range' object does not support item assignment

    TypeError: 'range' object does not support item assignment I was looking at some python 2.x code and ...

  6. Python的字符串修改报错:TypeError: 'str' object does not support item assignment

    Python中想修改字符串的最后一个字符,使用name[-1] = 'e'来实现,运行后报错. 报错内容是:TypeError: 'str' object does not support item ...

  7. TypeError: 'str' object does not support item assignment Python常见错误

    1.string是一种不可变的数据类型 2.尝试使用 range()创建整数列 有时你想要得到一个有序的整数列表,所以 range() 看上去是生成此列表的不错方式. 需要记住 range() 返回的 ...

  8. python TypeError: 'str' object does not support item assignment”

    想替换string里的空格,遍历替换提示如题错误,查询得知string类型不可更改 import string s = "2013/2/12" b = s.replace('/', ...

  9. appium 提示报错“TypeError: 'unicode' object is not callable”的解决方式!

    这里提到的这个报错,是小错误且容易经常会犯,有时需要特别注意使用. 目的要求结果:根据某个元素的id值获取到对应id的text值,并且将获取的text值与本身存在的text值做比较,查看text值是否 ...

随机推荐

  1. JavaFX(Maven 方式)

    运行界面第一种方式 运行界面第二种方式 参考文献 https://github.com/AlmasB/JavaFX11-example

  2. 一千行 MySQL 详细学习笔记

    Windows服务 -- 启动MySQL net start mysql -- 创建Windows服务 sc create mysql binPath= mysqld_bin_path(注意:等号与值 ...

  3. 关于js-angularJS的路由传参

    使用angular进行网页跳转传参 app.controller('payController', function ($scope, $location, payService) { 注明$loca ...

  4. [Tools] Wireshark Primer Tutorials

    介绍就不说了,安装也没必要讲,关于如何使用,网上的辣鸡文过多,视频又太冗余. 我推荐看下面有条理的入门教程. 界面说明:http://openmaniak.com/cn/wireshark_use.p ...

  5. Loadrunner 50个Vusers并发创建3000个账号脚本调试以及场景运行

    目标:用50个并发用户创建3000个账号到HP Web Server 分析: 1. Vugen录制脚本时,打开首页http://127.0.0.1:1080/WebTours/,进入注册账号界面不用重 ...

  6. 天池医疗AI大赛支持有感

    从去年大概11月份开始一直到现在,大部分的精力在天池医疗AI大赛的研发和支持上面,也算深度支持了20几只复赛参赛队伍的复赛进程.总的感觉其实与现在媒体宣传的"中国成为AI大国"ba ...

  7. 利用PIL创建验证码

    1. 随机生成rgb 元组 def random_RGB(min, max): return tuple([random.randint(min, max) for i in range(3)])2. ...

  8. 解决mysql设置时区时的错误Unknown or incorrect time zone: 'Asia/Shanghai'

    Mysql默认时区格式是'+8:00'的格式,这个时区可以在my.ini中[mysqld]节点下设置 default-time-zone = '+8:00' 默认这个设置是没有的 但是mysql不支持 ...

  9. ajax请求aspx.cs后台方法

    前台jquery代码 $(function () { $("#btnfix").click(function () { $.ajax({ type: "post" ...

  10. 搞搞电脑微信表情的破解(.dat转png or jpg)

    首先感谢:https://blog.csdn.net/weixin_42440768/ 因为狗子喜欢之前那个头像,但是没找到,于是我想看看我们之前的斗图过程中有没有发她的头像. 这是做这件事情的起因. ...