我无法确定为什么我的正则表达式失败了.这是我的代码:
my $email = "rise@dawn.com";
my ($found) = $email =~ /(rise@dawn\.com)/;
print "Found: $found";
Run Code Online (Sandbox Code Playgroud)
这导致输出:
C:\scripts\perl\sandbox>regex.pl
Found: rise.com
Run Code Online (Sandbox Code Playgroud)
如果我逃避@符号,那么我根本就没有输出:
my $email = "rise@dawn.com";
my ($found) = $email =~ /(rise\@dawn\.com)/;
print "Found: $found";
C:\scripts\perl\sandbox>regex.pl
Found:
Run Code Online (Sandbox Code Playgroud)
有人可以告诉我我的错误.
我已经尝试在这里实现该解决方案,但我似乎无法使其正常工作。
我有一个 div,它是使用 Django 模板内的循环填充的。就在其下方,有一个输入框,我可以在其中输入一些文本,然后单击“提交”。Submit 操作应该触发一个 Jquery 脚本,该脚本从服务器获取模型对象。然后应将此模型对象提供给 div,并且随后应“刷新”div。这里的目的是,一旦 div 被“刷新”,for 循环访问的变量就会被更新,从而显示额外的新结果。
我的模板代码:
<h1> This is a Test Ajax Page</h1>
<div id="refresh-this-div">
{% for comment in question.comment_set.all %}
<p class="">{{ comment.body }}</p>
{% endfor %}
<input id="my-text-input-id" type="text" />
<button type="submit" class="add-comment-button">Add</button>
</div>
</div>
Run Code Online (Sandbox Code Playgroud)
我的 Jquery:
<script type="text/javascript">
$(document).ready(function() {
$("button.add-comment-button").click(function() {
var com_body = $('#my-text-input-id').val();
$.ajax({
url: '/test_login_url',
success: function(data) {
$('#refresh-this-div').html(data);
}
});
});
});
</script>
Run Code Online (Sandbox Code Playgroud)
我的看法:
def test_login_url(request):
question = Question.objects.get(id=1)
com = Comment(question=question, body='This …Run Code Online (Sandbox Code Playgroud) 我正在 DigitalOcean VPS(512 MB RAM、1 个 CPU、20GB SSD)上运行 Django 1.8 项目。我有 Nginx 将流量代理到gunicorn。这是我的gunicorn命令(通过主管运行):
gunicorn my_web_app.wsgi:application --worker-class gevent --bind 127.0.0.1:8001 --timeout=1200
Run Code Online (Sandbox Code Playgroud)
我注意到,当我将大约 3-5 MB 的图像上传到我的网络应用程序时,gunicorn 工作线程崩溃并出现以下错误:
Jan 16 12:39:46 dev-1 kernel: [663264.917312] Out of memory: Kill process 31093 (gunicorn) score 589 or sacrifice child
Jan 16 12:39:46 dev-1 kernel: [663264.917416] Killed process 31093 (gunicorn) total-vm:560020kB, anon-rss:294888kB, file-rss:8kB
Run Code Online (Sandbox Code Playgroud)
我监控了 top 的输出,它显示内存使用量稳步增加:
上传图像之前的顶部输出(基线):
top - 13:19:45 up 7 days, 16:54, 2 users, load average: 0.00, 0.03, 0.05
Tasks: 96 total, 1 running, 95 …Run Code Online (Sandbox Code Playgroud) 我在这里经历了多处理教程:http://pymotw.com/2/multiprocessing/basics.html
我在下面写了一个脚本作为练习.该脚本似乎正在工作,我确实看到在taskmgr中运行了5个新的python进程.但是,我的print语句输出多次搜索的同一文件夹.
我怀疑不是在不同进程之间拆分工作,而是让每个进程都承担整个工作负载.我很确定我做错了什么,效率低下.有人可以指出我的错误吗?
到目前为止我所拥有的:
def email_finder(msg_id):
for folder in os.listdir(sample_path):
print "Searching through folder: ", folder
folder_path = sample_path + '\\' + folder
for file in os.listdir(os.listdir(folder_path)):
if file.endswith('.eml'):
file_path = folder_path + '\\' + file
email_obj = email.message_from_file(open(file_path))
if msg_id in email_obj.as_string().lower()
shutil.copy(file_path, tmp_path + '\\' + file)
return 'Found: ', file_path
else:
return 'Not Found!'
def worker():
msg_ids = cur.execute("select msg_id from my_table").fetchall()
for i in msg_ids:
msg_id = i[0].encode('ascii')
if msg_id != '':
email_finder(msg_id) …Run Code Online (Sandbox Code Playgroud) 我有一个数组哈希,我想按数组大小排序.
到目前为止,这是我的代码:
use strict;
use warnings;
my %hash_array = (
"array_1" => ["apple", "ball", "cat"],
"array_2" => ["def", "leppard", "rocks", "too"],
"array_3" => ["italian", "pastry", "missing", "cherry", "top"],
);
# Length of array_1
my $array_1_size = @{$hash_array{"array_1"}};
print "Should print three: $array_1_size\n";
# Found this here: https://stackoverflow.com/questions/15722286
# But my result remains unsorted
foreach my $key ( sort { $hash_array{$b} <=> $hash_array{$a}} keys %hash_array ) {
print "key: $key\n";
}
Run Code Online (Sandbox Code Playgroud)
我理解如何获得单个数组的大小,但我不确定如何将它与sort函数结合起来.
我从这里复制了最后一个foreach块,但该解决方案对我不起作用,因为我的输出没有被订购.我对最后一段代码有一些疑问:
我正在试验 django-tables2。我创建了一个测试站点,显示一列日期(创建者timezone.now())。默认情况下,日期顺序为最旧-> 最新。如果我单击列标题,日期会以相反的顺序显示(所需的默认行为)。
我玩过这个order_by论点,但我做错了什么。我的tables.py:
class OrderTable(tables.Table):
order_date = tables.Column(order_by=("Order Date",))
Run Code Online (Sandbox Code Playgroud)
我的意见.py:
def index(request):
table = OrderTable(Order.objects.all())
RequestConfig(request, paginate={"per_page": 10}).configure(table)
return render(request, 'orders_app/index.html', {'table': table})
Run Code Online (Sandbox Code Playgroud)
如何订购“订购日期”列,使其显示为最新->最旧?
我的目标是将字符串读回到数组引用中。
我修改了这里的示例代码。该网站上的示例使用哈希,在我的例子中我想使用数组。这是我尝试过的:
use strict;
use warnings;
# Build an array with a hash inside
my @test_array = ();
my %test_hash = ();
$test_hash{'ding'} = 'dong';
push @test_array, \%test_hash;
# Get the Dumper output as a string
my $output_string = Dumper(\@test_array);
# eval_result should be an array but is undef
my @eval_result = @{eval $output_string};
Run Code Online (Sandbox Code Playgroud)
运行此代码会产生此错误:
Can't use an undefined value as an ARRAY reference at
/var/tmp/test_dumper.pl line 30 (#1)
(F) A value used as either a hard reference or …Run Code Online (Sandbox Code Playgroud) (使用Django 1.11.5)
传统上,我总是创建一个这样的模型:
class Animal(models.Model):
is_hungry = models.BooleanField(default=True)
Run Code Online (Sandbox Code Playgroud)
然后进行如下更改:
animal = Animal()
animal.save()
animal.is_hungry = True
animal.save()
Run Code Online (Sandbox Code Playgroud)
最近,我看到一位朋友用自定义保存方法定义模型:
class Animal(models.Model):
is_hungry = models.BooleanField(default=True)
def feed_animal(self):
self.is_hungry = False
self.save()
Run Code Online (Sandbox Code Playgroud)
调用此方法似乎按预期工作:
>>> from testapp.models import Animal
>>> a = Animal()
>>> a.save()
>>> a.is_hungry
True
>>>
>>> a.feed_animal()
>>> a.is_hungry
False
Run Code Online (Sandbox Code Playgroud)
在模型定义中定义这样的自定义保存方法有什么好处/缺点吗?是否有理由更喜欢.save()直接调用该对象?
我正在学习如何在Perl中进行线程化.我在这里查看示例代码并稍微调整了解决方案代码:
#!/usr/bin/perl
use strict;
use warnings;
use threads;
use Thread::Semaphore;
my $sem = Thread::Semaphore->new(2); # max 2 threads
my @names = ("Kaku", "Tyson", "Dawkins", "Hawking", "Goswami", "Nye");
my @threads = map {
# request a thread slot, waiting if none are available:
foreach my $whiz (@names) {
$sem->down;
threads->create(\&mySubName, $whiz);
}
} @names;
sub mySubName {
return "Hello Dr. " . $_[0] . "\n";
# release slot:
$sem->up;
}
foreach my $t (@threads) {
my $hello = $t->join(); …Run Code Online (Sandbox Code Playgroud) 我正在使用 Flask-SQLAlchemy 和以下内容models.py:
class DomainRoot(db.Model):
# Int/Float fields
id = db.Column(db.Integer, primary_key=True)
# String fields
domain = db.Column(db.String(64), index=True, unique=True)
# DateTime fields
created = db.Column(db.DateTime)
updated = db.Column(db.DateTime)
# ForeignKey relationships
domain_paths = db.relationship('DomainPath', backref='domain_root', lazy='dynamic')
def __repr__(self):
return '<DomainRoot %r>' % (self.domain)
class DomainPath(db.Model):
# Int/Float fields
id = db.Column(db.Integer, primary_key=True)
# String fields
domain_path = db.Column(db.String(256), index=True, unique=True)
# DateTime fields
created = db.Column(db.DateTime)
updated = db.Column(db.DateTime)
# ForeignKey fields
domainroot_id = db.Column(db.Integer, db.ForeignKey('domainroot.id'))
def …Run Code Online (Sandbox Code Playgroud) django ×4
perl ×4
python ×3
python-2.7 ×2
ajax ×1
flask ×1
gevent ×1
gunicorn ×1
javascript ×1
jquery ×1
nginx ×1
regex ×1
sqlalchemy ×1