python中remove的一些坑】的更多相关文章

摘要:对于python中的remove()函数,官方文档的解释是:Remove first occurrence of value.大意也就是移除列表中等于指定值的第一个匹配的元素. 常见用法: a = [1,2,3,4],a.remove(1),然后a就是[2,3,4]:对于a = [1,1,1,2],其结果也是[1,1,2],这是最基本的用法. 但是对于下面这个: a = [1,2,3,4] for i in a: a.remove(i) # 结果 a = [2,4] 或者说 a = [1,…
前几天,使用python时遇到这么一个需求,删除一个列表中值为1的元素.我寻思着使用remove方法,但是remove方法只会删除第一个,于是我使用for循环去删除.代码和运行结果如下: 当时这个结果让我很懵逼,为什么1没有被删除完?查了资料发现,是for循环捣的鬼.因为for循环实际是循环的列表下标(索引),同时由于列表的可变性,每一次删除一个元素,列表的长度就会发生变化,元素的索引也会发生变化.这里来具体分析一下这段代码: 第一次循环,循环索引为0,此时索引为0的元素是1,满足条件,因此my…
import sqlite3 #导入模块 conn = sqlite3.connect('example.db') C=conn.cursor() #创建表 C.execute('''CREATE TABLE stocks(data text,trans text, symple text,qty real,price real)''') #插入一条数据 C.execute('''INSERT INTO stocks VALUES('2006-10-01,'BUY','RHA',100,35.1…
以a=[1,2,3] 为例,似乎使用del, remove, pop一个元素2 之后 a都是为 [1,3], 如下:http://Novell.Me >>> a=[1,2,3] >>> a.remove(2) >>> a [1, 3] >>> a=[1,2,3] >>> del a[1] >>> a [1, 3] >>> a= [1,2,3] >>> a.pop(…
先上题:写出最终打印的结果 a = [1, 2, 3, 4] for x in a: a.remove(x) print(a) print("=" * 20) b = [1, 2, 3, 4] for i in b: b.pop() print(b) print("=" * 20) c = [1, 2, 3, 4] for i in range(len(c)): del c[0] print(c) 一开始一看应该都是[ ]吧?? 在机器上跑了一下: [2, 4]==…
以a=[1,2,3] 为例,似乎使用del, remove, pop一个元素2 之后 a都是为 [1,3], 如下:http://Novell.Me >>> a=[1,2,3] >>> a.remove(2) >>> a [1, 3] >>> a=[1,2,3] >>> del a[1] >>> a [1, 3] >>> a= [1,2,3] >>> a.pop(…
在python脚本中,我们难免会需要用到自身文件所在的绝对路径,第一想法可能就是用os.path.dirname(__file__) 但是这里有个大坑,我就踩了,这种方式得到路径会出现问题,脚本执行报错!,于是用cmd运行脚本程序,打印错误显示得到的这种方式得到path居然是空字符串,这让我十分困扰,由于资料有限,对问题原因无法深究,后来再获取父级路径一律用os.getcwd(),从此爽歪歪~~~ 此外强调一点:直接打印__file__得到的是文件的绝对路径哦! 给个赞呗~…
python说简单也不难,但是在这其中大大小小的点 真的是有够折磨人欸!  1.   input 输入的时候,即使输入的是数字,数据类型也是字符串   2.   字符串本质上来看可以看作有序数组  3.  r+模式下的写东西会覆盖原先的东西,但不是完全覆盖 怎么解决呢??  4. "# _*_coding:utf-8_*_"        很熟悉吧,那,# 也是注释的意思,这句话不是被注释了吗?为什么还能确定编码规则呢?   5.  文件操作的“wb”模式就可以存二进制,但是也只能存二…
JSON虽好,一点点不对,能把人折腾死: 1.变量必须要用双引号 2.如果是字符串,必须要用引号包起来 Error:Expecting : delimiter: line 1 column 6 (char 5)  这是变量间忘了用逗号了 Error:Expecting , delimiter: line 1 column 38 (char 37)  这是一个非数字串忘了用引号了.char37,是指“S”的位置,因为发现不是数字. {"data":"2017-06-17&quo…
2.7读取,需要使用io.open 3.x使用open 使用io.open的时候路径需要使用\\ 目前io.open的文件名不能为中文…