我正在使用请求库和访问一个网站从它收集数据与以下代码: r = requests.get(url) 我想添加错误testing,以便input不正确的URL并返回404错误。 如果我故意input一个无效的URL,当我这样做: print r 我得到这个: <Response [404]> 编辑: 我想知道如何testing。 对象types仍然相同。 当我做r.content或r.text ,我只是得到一个自定义404页面的HTML。
如何将包含string和NaN值的DataFrame列转换为浮点数。 还有另外一列的值是string和浮点数; 如何将整个列转换为浮动。
这是我的日志输出 INFO main digestemails – process inbox INFO main digestemails – checking for emails in c:\development\DCMail\email\KN-Source INFO main digestemails – digesting 003d01c95a7b_3446880_0202fea9@xxxx.com.eml INFO main digestemails – extracting attachments INFO main digestemails – no attachments or no attachments supported INFO main digestemails – updating database INFO main digestemails – email -> COMPLETED folder INFO main digestemails […]
我可以在python扩展语法为其他字典的词典的理解,如collections的OrderedDict模块或从dictinheritance我自己的types? 只要重新绑定dict名称显然不起作用, {key: value}理解语法仍然给你一个普通的理解和文字老字典。 >>> from collections import OrderedDict >>> olddict, dict = dict, OrderedDict >>> {i: i*i for i in range(3)}.__class__ <type 'dict'> 所以,如果可能的话,我该怎么做呢? 没关系,只能在CPython中使用。 对于语法,我想我会尝试用一个O{k: v}前缀,就像我们在r'various' u'string' b'objects' 。 注意:当然,我们可以用一个生成器expression式来代替,但是我更感兴趣的是用语法来看待可用的python。
我有以下代码: from suds.client import Client import logging logging.basicConfig(level=logging.INFO) logging.getLogger('suds.client').setLevel(logging.DEBUG) logging.getLogger('suds.transport').setLevel(logging.DEBUG) logging.getLogger('suds.xsd.schema').setLevel(logging.DEBUG) logging.getLogger('suds.wsdl').setLevel(logging.DEBUG) SB_PRIVATE_ACCESS = {"PATH":"https://thisurl.com:443/services/",} client = Client(SB_PRIVATE_ACCESS['PATH']) print client 但我得到500错误。 我试图通过SUD发送和接收XML到wsdl开发者,但是我不知道如何输出它。 我一直在寻找SUD的文档,但似乎无法find它:/有谁知道如何输出发送和接收的原始XML?
from functools import wraps def foo_register(method_name=None): """Does stuff.""" def decorator(method): if method_name is None: method.gw_method = method.__name__ else: method.gw_method = method_name @wraps(method) def wrapper(*args, **kwargs): method(*args, **kwargs) return wrapper return decorator 例如:下面的代码使用foo_register来装饰my_function ,而不是使它成为decorator 。 @foo_register def my_function(): print('hi…') 示例:以下按预期工作。 @foo_register('say_hi') def my_function(): print('hi…') 如果我希望它在两个应用程序(一个使用method.__name__名称method.__name__和一个传入名称)中正确工作,我必须检查foo_register内部以查看第一个参数是否是装饰器,如果是,则必须: return decorator(method_name) (而不是return decorator )。 这种“检查是否可以调用”似乎非常黑客。 有没有更好的方法来创build一个这样的多用途装饰器? PS我已经知道,我可以要求装饰被称为,但这不是一个“解决scheme”。 我希望API感觉自然。 我的妻子喜欢装饰,我不想毁了。
在Windows OS(64位)下运行python26 …..我有这样的错误: import win32api" error in Python 2.6: pywintypes26.dll 要么 pythoncom26.dll missing ImportError: DLL load failed: The specified module could not be found. 我已经完成了python26的msi安装,所有dll都可以在C:\ Python26 \ Lib \ site-packages \ pywin32_system32下find
pandasDataFrame包含名为"date"列,其中包含非唯一的datetime值。 我可以在这个框架中使用以下几行: data.groupby(data['date']) 但是,这会按datetime值拆分数据。 我想将这些数据按“date”列中存储的年份进行分组。 此页面显示如何将时间戳用作索引的情况下按年份分组,在我的情况下不是这样。 我如何实现这个分组?
假设我在Pythonunit testing中有以下代码: aw = aps.Request("nv1") aw2 = aps.Request("nv2", aw) 有没有一种简单的方法来断言在testing的第二行中调用了一个特定的方法(在我的例子中是aw.Clear() )? 例如有这样的事情: #pseudocode: assertMethodIsCalled(aw.Clear, lambda: aps.Request("nv2", aw))
我目前正在尝试从Python 2.7中的.csv文件读取数据,最多有100万行,200列(文件范围从100mb到1.6gb)。 我可以做到这一点(非常缓慢)的文件与30万行以下,但一旦我上面,我得到内存错误。 我的代码如下所示: def getdata(filename, criteria): data=[] for criterion in criteria: data.append(getstuff(filename, criteron)) return data def getstuff(filename, criterion): import csv data=[] with open(filename, "rb") as csvfile: datareader=csv.reader(csvfile) for row in datareader: if row[3]=="column header": data.append(row) elif len(data)<2 and row[3]!=criterion: pass elif row[3]==criterion: data.append(row) else: return data getstuff函数中的else子句的原因是,所有符合条件的元素都将在csv文件中一起列出,所以当我通过它们以节省时间时离开循环。 我的问题是: 我怎样才能设法让这个更大的文件工作? 有什么办法可以让它更快? 我的电脑有8GB RAM,运行64位Windows 7,处理器是3.40 GHz(不确定你需要什么信息)。 […]