我有一个包含以下值的列表:
['1', '3', '4', '4']
我有一个if语句,它将检查这些值是否包含在列表中,然后输出一条语句:
if "1" and "2" and "3" in columns:
print "1, 2 and 3"
考虑到列表不包含值"2",它不应该打印语句,但是它是:
输出:
1, 2 and 3
有人能解释一下为什么会这样吗?是Python读取列表的方式导致了这种情况吗?
在Django,如果我写:
for i in User.objects.all():
i.active()
我知道可以将变量设置为User.objects.all()的当前状态,然后运行循环,但我想知道python到底在做什么。Python将只获得一次用户列表,然后迭代该列表吗?还是会在每次迭代中查询数据库?
我目前正在Python 3中处理这个函数:
def BToBInter(Array):
NewA = []
Amount = 23
Res = 0
M = len(Array) - 24
for P in range(M):
for I in Array[P:P+24]:
if I == 1:
Res += (1 << Amount)
Amount -= 1
NewA.append(Res)
Amount = 23
在涉猎函数式语言时,我回想起一种调用对象列表上的方法的方法,其中下一次方法调用使用前一次调用的结果作为输入,以及下一列表项。
在Python中,以下代码使用for循环执行相同的操作(在本例中,它基于整数列表构建二叉树)。假设binary_insert以一棵树和一个整数作为参数。
t = None
for x in [4, 2, 1, 5, 6, 3, 7, 9, 8, 12, 10, 11, 13, 15, 14]:
t = binary_insert(t, x)
print t
基本上,我正在尝试记住这类函数应用程序的名称。如果有Python的等价物,那就太棒了。
我有一个已成功转换为python状态的列表。
例:
from operator import mul,add,sub,abs
l = ['add(4,mul(3,abs(-3)))']
我想知道我将使用什么来运行这个字符串作为实际的python代码?我应该期望输出为13,我希望将列表的第0值输入到一个能够将该值作为实际python代码运行的函数中。
我有一个python文件,里面有一个列表。
localhost tmp]$ cat 1.txt
['aaaaaaa','bbbbbbb','cccccc','dddddddd']
我想要阅读列表中的每个元素。取而代之的是获取每个字符。如果列表被声明为列表变量,我可以读取列表的每个值,但我的列表在文本文件中。
#!/usr/bin/python
def get_vminfo(vms):
for vm in vms:
print vm
#vms=['aaaaaaa','bbbbbbb
我的生命清单:
let ListRange = []
let ListRange = ['2','3','hello']
我想在python命令中导入列表:
exe "r!python -c \"import random ; print('\\n'.join(format(random.choice(ListRange)) for i in range(14)))\""
这将给出一个错误。
回溯(最近一次调用):
文件"",第1行,在
文件"",第
我正在使用Python中的Beautiful从HTML文件中刮取一些数据。在某些情况下,Beautiful返回包含string和NoneType对象的列表。我想过滤掉所有的NoneType对象。
在Python中,包含NoneType对象的列表是不可迭代的,因此列表理解不是其中的一个选项。具体来说,如果我有一个包含lis的列表NoneTypes,并且我尝试执行类似于[x for x in lis (some condition/function)]的操作,Python会抛出错误TypeError: argument of type 'NoneType' is not itera
我编写了以下代码来计算列表列表的所有排列之间所获得的和的平均值:
import numpy as np
import itertools
r = 13
c = 5
a = np.arange(r*c).reshape(r, c)
a = list(itertools.product(*a))
res = sum([sum(e) for e in a])/len(a)
代码崩溃,因为r看起来有点太大了,迭代工具/python无法处理它。在没有代码崩溃的情况下,还有其他方法来计算res吗?
为了上大学,我必须做这个练习。基本上,我必须创建一个函数findurls( urls,s,k),其中urls是一个url列表,s是一个字符串,n是为了返回url,字符串必须出现的次数。例如,如果我的列表中的urls包含字符串"Python“至少两次,该函数应该只返回列表中包含字符串"Python”出现两次或更多次的urls。我写了这段代码:
def findurl(urls,s,k):
count = 0
for url in urls:
f = ul.urlopen(url)
r = f.read()
if s in url:
我正在使用python3.4,只是在学习基础知识,所以请容忍我。
listA = [1,2]
for a in listA:
listA.remove(a)
print(listA)
假设我得到一个空列表,但我得到的是一个值为“2”的列表。我用大号“no”调试代码。列表中的值,以及当列表具有单个元素时,for循环退出。为什么最后一个元素没有从列表中删除..?
请考虑以下代码。
with open('filename.txt', 'r') as f:
var = [element for element in f.readlines()][3]
这个问题涉及Python的内部,而不是结果。
Python是计算整个[element for element in f.readlines()]列表中索引的所有元素,还是只计算所有元素直到第三个索引?
我正在尝试将我的Cython代码中的所有Python调用转换为纯C,以便能够释放GIL并进行并行化。
我曾经使用从2Dnumpy数组初始化的列表大小为2的列表,所以我这样做了:
cdef double[:,:,:] init=np.random.uniform((10,4,2),dtype=np.float32)
cdef int i
cdef int N=init.shape[0]
for i in range(N):
a=init[i].tolist()
#I then get this list of list
#a=[[1.,1.],[1.,1.],[1.,1.]]