鉴于正则表达式,我想生成随机数据x次数来测试某些东西.
例如
>>> print generate_date('\d{2,3}')
13
>>> print generate_date('\d{2,3}')
422
Run Code Online (Sandbox Code Playgroud)
当然,目标是做一些比电话号码和电子邮件地址更复杂的事情.
这样的事情存在吗?如果是的话,Python是否存在?如果没有,我可以使用任何线索/理论来做到这一点?
此方法迭代数据库中的术语列表,检查术语是否在作为参数传递的文本中,如果是,则将其替换为带有术语作为参数的搜索页面的链接.
术语数量很高(大约100000),所以这个过程非常慢,但这是好的,因为它是作为一个cron作业执行的.但是,它导致脚本内存消耗飙升,我无法找到原因:
class SearchedTerm(models.Model):
[...]
@classmethod
def add_search_links_to_text(cls, string, count=3, queryset=None):
"""
Take a list of all researched terms and search them in the
text. If they exist, turn them into links to the search
page.
This process is limited to `count` replacements maximum.
WARNING: because the sites got different URLS schemas, we don't
provides direct links, but we inject the {% url %} tag
so it must be rendered before display. You can use the `eval`
tag from `libs` …Run Code Online (Sandbox Code Playgroud) 我有这个型号:
class Movie(models.Model):
# I use taggit for tag management
tags = taggit.managers.TaggableManager()
class Person(models.Model):
# manytomany with a intermediary model
movies = models.ManyToManyField(Movie, through='Activity')
class Activity(models.Model):
movie = models.ForeignKey(Movie)
person = models.ForeignKey(Person)
name = models.CharField(max_length=30, default='actor')
Run Code Online (Sandbox Code Playgroud)
而且我想要匹配一部与另一部演员相同的电影.Not one actor in common, but all the actors in common.
所以我不想要这个:
# actors is a shortcut property
one_actor_in_common = Movie.object.filter(activities__name='actor',
team_members__in=self.movie.actors)
Run Code Online (Sandbox Code Playgroud)
我想要的东西会让"Matrix I"与"Matrix II"相匹配,因为他们分享'Keanu Reeves'和'Laurence Fishburne',但不匹配"Speed"因为他们分享'Keanu Reeves'而不是'Laurence Fishburne'.
我现在已经使用角度一段时间了,我没有看到它是如何从我以前的编码方式改进的.
首先,我看不出有一个中心对象来保存你的项目有什么问题,毕竟,注入器是一个单独的,它将你的依赖关系查找到一个中心位置,所以angular确实有一个中心对象,它只是隐藏.如果正确完成,Namspacing并不意味着耦合.即使完成后,您也不需要将代码中的每个对象与其他对象松散耦合.此外,无论何时创建独立的JS脚本,都必须将其包装成角度,以便让它们一起玩得很好.
其次,每次声明所有依赖性(特别是缩小)是非常冗长的,因此与可靠的命名空间相比,从可读性的角度来看没有任何好处.
第三,性能提升很小.它迫使我到处使用单身,但是如果我需要的话,我可以自己做,而且大多数时候,我不这样做(网络和DOM操作是我的瓶颈,而不是JS对象).
最后,我喜欢"增强型"HTML和自动双向绑定,但我不知道注入如何使其比其他框架处理依赖性的方式更好,因为它甚至不提供动态加载像require.js.我没有看到任何用例,我对自己说"哦,这是比以前更好的地方,我看到"编码时.
您能否向我解释一下这项技术选择给项目带来了哪些好处?
我现在只能看到一个:常规和最佳实践执行.创建一个lib生态系统是一个很大的问题,但是现在我并没有在角度社区中看到它的成果.
有时,我无法确定何时或是什么导致它,pdb将无法帮助您使用以下代码:
try:
foo()
except Exception as e:
import pdb; pdb.set_trace()
Run Code Online (Sandbox Code Playgroud)
您最终得到了通常的提示,但尝试访问e将导致:
(pdb) e
*** NameError: name 'e' is not defined.
Run Code Online (Sandbox Code Playgroud)
当然不是所有的时间,它发生在Linux,Windows,我的机器,我的同事机器上......
获得有关允许您向客户收费的各种API和服务的反馈非常有用,因此可以比较:
我在这里考虑Paypal,Google Checkout,但也是基于银行信用卡的系统.
我将其设置为社区维基,因为这是一个非常开放的问题.
不是在谈论这个delay方法.
我希望能够获得一个任务,给它任务,并在执行之前动态更改它的ETA.
现在我必须取消它,并重新安排一个.如果预定的过程涉及很多东西,那就太麻烦了.
我知道如何使用urllib下载文件.但是,如果服务器允许,它会更快地同时下载同一文件的几个部分然后合并它们.
你是如何用Python做到的?如果你不能轻松地使用标准的lib,那么任何可以让你这样做的lib?
我可以捕获并转储一个异常(和相应的堆栈跟踪),这会导致程序崩溃而不执行以下操作:
try:
# whole program
except Execption as e:
dump(e)
raise
Run Code Online (Sandbox Code Playgroud)
有时外部库崩溃了,我想对Python死亡做出反应并记录它的原因.我不想阻止Exception崩溃程序,我只想要调试信息.
就像是:
signals.register('dying', callback)
def callback(context):
# dumping the exception and
# stack trace from here
Run Code Online (Sandbox Code Playgroud)
这甚至可能吗?
给定一个模块包含:
import stuff
from foo import Foo
from bar import *
CST = True
def func(): pass
Run Code Online (Sandbox Code Playgroud)
如何定义函数get_defined_objects以便我可以:
print(get_defined_objects('path.to.module'))
{'CST': True, 'func', <function path.to.module.func>}
Run Code Online (Sandbox Code Playgroud)
现在,我能想象的唯一解决方案是读取原始模块文件,提取已定义的名称,re.search(r'^(?:def|class )?(\w+)(?:\s*=)?'然后导入模块,并找到交集__dict__.
有什么东西更清洁吗?