是否可以在Python字典中为每个值分配多个键。 一个可能的解决scheme是为每个键分配值: dict = {'k1':'v1', 'k2':'v1', 'k3':'v1', 'k4':'v2'} 但是由于我的数据文件大于2 GB,这不是有效的内存。 否则,你可以做一个字典键的字典: key_dic = {'k1':'k1', 'k2':'k1', 'k3':'k1', 'k4':'k4'} dict = {'k1':'v1', 'k4':'v2'} main_key = key_dict['k2'] value = dict[main_key] 这也是非常耗费时间和精力的,因为我必须经历整个字典/文件两次。 有没有其他简单和内置的Python解决scheme? 注意:我的字典值不是简单的string(如在问题“v1”,“v2”)相当复杂的对象(包含不同的其他字典/列表等,不可能腌他们) 注意:问题似乎相似, 我怎样才能使用一个键和一个索引相同的字典值? 但我不是在寻找有序/索引的字典,我正在寻找其他有效的解决scheme(如果有的话),除了这个问题中提到的两个。
如何打印theano TensorVariable的数值? 我是theano的新手,所以请耐心等待:) 我有一个函数,我得到y作为参数。 现在我想debugging打印这个y的形状到控制台。 运用 print y.shape 导致控制台输出(我期待数字,即(2,4,4) ): Shape.0 或者我怎样才能打印例如下面的代码的数字结果(这个计数y有多less值大于最大值的一半): errorCount = T.sum(T.gt(T.abs_(y),T.max(y)/2.0)) errorCount应该是一个单一的数字,因为T.sum总结了所有的值。 但是使用 print errCount 给我(预计像134 ): Sum.0
我试图build立一个新的Django项目的表(即表中不存在的数据库); django版本是1.7,而db后端是PostgreSQL。 该项目的名称是crud。 迁移尝试的结果如下: python manage.py makemigrations crud Migrations for 'crud': 0001_initial.py: – Create model AddressPoint – Create model CrudPermission – Create model CrudUser – Create model LDAPGroup – Create model LogEntry – Add field ldap_groups to cruduser – Alter unique_together for crudpermission (1 constraint(s)) python manage.py migrate crud Operations to perform: Apply all migrations: […]
我刚刚在Python中遇到了一个bug。 这是那些愚蠢的新手bug之一,但它让我想到了Python的机制(我是一个很长时间的C ++程序员,是Python的新手)。 我将列出错误的代码,并解释我做了什么来解决它,然后我有几个问题… 场景:我有一个名为A的类,它有一个字典数据成员,下面是它的代码(这当然是简化): class A: dict1={} def add_stuff_to_1(self, k, v): self.dict1[k]=v def print_stuff(self): print(self.dict1) 使用此代码的类是B类: class B: def do_something_with_a1(self): a_instance = A() a_instance.print_stuff() a_instance.add_stuff_to_1('a', 1) a_instance.add_stuff_to_1('b', 2) a_instance.print_stuff() def do_something_with_a2(self): a_instance = A() a_instance.print_stuff() a_instance.add_stuff_to_1('c', 1) a_instance.add_stuff_to_1('d', 2) a_instance.print_stuff() def do_something_with_a3(self): a_instance = A() a_instance.print_stuff() a_instance.add_stuff_to_1('e', 1) a_instance.add_stuff_to_1('f', 2) a_instance.print_stuff() def __init__(self): self.do_something_with_a1() […]
我正在尝试预取训练数据以隐藏I / O延迟。 我想写自定义的Python代码,从磁盘加载数据并预处理数据(例如通过添加上下文窗口)。 换句话说,一个线程进行数据预处理,另一个线程进行训练。 这在TensorFlow中可能吗? 更新:我有一个基于@ mrry示例的工作示例。 import numpy as np import tensorflow as tf import threading BATCH_SIZE = 5 TRAINING_ITERS = 4100 feature_input = tf.placeholder(tf.float32, shape=[128]) label_input = tf.placeholder(tf.float32, shape=[128]) q = tf.FIFOQueue(200, [tf.float32, tf.float32], shapes=[[128], [128]]) enqueue_op = q.enqueue([label_input, feature_input]) label_batch, feature_batch = q.dequeue_many(BATCH_SIZE) c = tf.reshape(feature_batch, [BATCH_SIZE, 128]) + tf.reshape(label_batch, [BATCH_SIZE, […]
我有一个150MB的单页excel文件,需要大约7分钟,打开一个非常强大的机器上使用以下内容: # using python import xlrd wb = xlrd.open_workbook(file) sh = wb.sheet_by_index(0) 有没有办法更快地打开Excel文件? 我打开甚至非常古怪的build议(如hadoop,火花,c,java等)。 理想情况下,我正在寻找一种方法来在30秒内打开文件,如果这不是一个梦想。 另外,上面的例子是使用python,但它不一定是python。 注意:这是来自客户端的Excel文件。 在我们收到它之前,它不能被转换成任何其他的格式。 这不是我们的文件 更新:回答一个代码的工作示例,将在30秒内打开以下200MB的Excel文件将奖励赏金: https : //drive.google.com/file/d/0B_CXvCTOo7_2VW9id2VXRWZrbzQ/view? usp =共享 。 这个文件应该有string(col 1),date(col 9)和数字(col 11)。
我很困惑如何使用Popen()search可执行文件。 它的作品,如果给予subprocess的绝对path,但我试图使用相对path。 我发现,如果我设置环境variablesPYTHONPATH,那么我可以从该path中获取导入的模块,并且PYTHONPATH在sys.path ,但它似乎没有帮助subprocess.Popen的行为。 我也尝试编辑sitecustomize.py文件,添加PYTHONPATH到os.environ ,就像这样 # copy PYTHONPATH environment variable into PATH to allow our stuff to use # relative paths for subprocess spawning import os if os.getenv('PYTHONPATH') is not None and os.getenv('PATH') is not none: os.environ['PATH'] = ':'.join([os.getenv('PATH'), os.getenv('PYTHONPATH')]) 并通过交互方式,使用ipython或通过从命令行运行脚本来validation启动python时,PYTHONPATH成功显示在os.environ 。 但是, subrocess.Popen 仍然不在那里search可执行文件。 如果没有指定env kwarg,我认为它应该inheritance父母的环境? 接下来,我尝试给env明确,首先通过复制os.getenv ,其次是通过给env={'PATH': '/explicit/path/to/search/from'} ,它仍然没有find可执行文件。 现在我很难过 希望有个例子能更清楚地解释我的问题: /目录/ […]
我知道pandas支持第二个Y轴,但我好奇,如果有人知道一个方法来把第三个Y轴放在地块上…目前我正在用numpy + pyplot来实现这一点…但是对于大型数据集来说这是很慢的。 这是为了便于比较(例如相对湿度/温度/和电导率),在同一graphics上用不同的单位绘制不同的测量值, 所以真的只是好奇,如果有人知道如果这是可能的pandas没有太多的工作。 [编辑]我怀疑有没有办法做到这一点(没有太多的开销),但是我希望被certificate是错误的,这可能是matplotlib的限制…
我使用Paramiko通过SSH连接到服务器。 基本身份validation运作良好,但我不明白如何连接公钥。 当我连接腻子,服务器告诉我这一点: Using username "root". Authenticating with public key "rsa-key@ddddd.com" Passphrase for key "rsa-key@ddddd.com": [i've inserted the passphrase here] Last login: Mon Dec 5 09:25:18 2011 from … 我用这个ppk文件连接到它: PuTTY-User-Key-File-2: ssh-rsa Encryption: aes256-cbc Comment: rsa-key@dddd.com Public-Lines: 4 [4 lines key] Private-Lines: 8 [8 lines key] Private-MAC: [hash] 使用基本身份validation我得到的错误(从日志)是: DEB [20111205-09:48:44.328] thr=1 paramiko.transport: userauth is […]
我即将在我的Ubuntu Lucid上重新安装numpy和scipy 。 由于这些东西有很多依赖关系,我想知道是否有一个全面的testing套件来检查新的安装是否真正起作用。 当然,我可以把一堆脚本一个接一个地运行,看看能不能继续工作,但是不能防范在将来某个时候我会用一些我没用的东西之前没有用,它会破坏(或者更糟糕的是,默默地产生不存在)。