小编Evh*_*vhz的帖子

在字典中查找与条件匹配的值

如果条件满足,我试图从字典设置一个值.基本上我迭代我的字典的值,并检查它们是否适合我的条件(然后我打破循环,这不是最好的做法,但保存一些迭代)

这是我正在使用的代码:

for (key,value) in zip(mn_zone_dict.keys(), mn_zone_dict.values()):
    if cost < value:
        zone = key
        break
Run Code Online (Sandbox Code Playgroud)

我做它的工作,但它相对缓慢,而我必须检查> 10k记录,所以我正在寻找一些更聪明(也许更pythonic)的方法来解决这个任务.我已经看到一个函数any()但它只返回如果有这样的条目匹配条件而不告诉哪个.

我很乐意听到您的想法和建议.

python dictionary python-3.x

5
推荐指数
1
解决办法
74
查看次数

迁移中的Django日期时间默认值

我已经阅读了一些关于这个问题的问题,这个问题也没有为我的案例给出正确答案:

我在已经存在的模型中添加了created_time字段,因此mysql表中没有属于该模型的日期.

class Configs(models.Model):
    ...
    creation_date = models.DateTimeField(auto_now_add=True, blank=True)
    ...
Run Code Online (Sandbox Code Playgroud)

我使用了迁移 python manage.py makemigrations

我收到这个错误:

您试图在没有默认值的情况下向集合中添加不可为空的字段"creation_date"; 我们不能那样做(数据库需要一些东西来填充现有的行).请选择一个修复:

我尝试了很多选择:

creation_date = models.DateTimeField(auto_now_add=True)
Run Code Online (Sandbox Code Playgroud)

这个给出了同样的错误.

如果设置中的USE_TZ设置为False,如何实现此迁移?
顺便说一下,这是Django 1.9.4 makemigrations脚本中的一个错误吗?

python mysql django django-migrations

4
推荐指数
1
解决办法
7811
查看次数

为什么Django DecimalField让我存储Float或字符串?

我不明白Django DecimalField的行为.

它被定义为:

一个固定精度的十进制数,由Decimal实例在Python中表示.

但是,使用以下模型:

class Article(models.Model)
    unit_price = DecimalField(max_digits=9, decimal_places=2)
Run Code Online (Sandbox Code Playgroud)

我可以用至少3种方式创建一篇文章:

article = Article.objects.create(unit_price="2.3")
type(article.unit_price)
>>> str

article = Article.objects.create(unit_price=2.3)
type(article.unit_price)
>>> float

article = Article.objects.create(unit_price=Decimal('2.3'))
type(article.unit_price)
>>> decimal.Decimal
Run Code Online (Sandbox Code Playgroud)

为什么Django DecimalField能够返回除Decimal类型以外的其他内容?

什么是确保我的应用程序永远不会处理浮动价格的最佳方法?

谢谢.

python django floating-point decimal

3
推荐指数
1
解决办法
2231
查看次数

使用命令行以行号打开Sublime文本文件

我正在尝试使用sublime text 3打开文件,并且我想用光标在一个具体的行号处打开它。

我一直在检查,subl --help但找不到具体的选项。因此,我只是在使用: subl filename

有什么选择吗?

sublimetext sublimetext3

3
推荐指数
1
解决办法
1500
查看次数

kubernetes,提示符在端口转发命令时冻结

我想在从kubernetes获得在线指南之后,设置从本地端口(节点)到pod redis-master的端口转发。

目前,我的提示在命令中冻结了5分钟以上port-forward

[root@k8s-master deployments]# kubectl create -f https://k8s.io/docs/tasks/access-application-cluster/redis-master.yaml
pod "redis-master" created
[root@k8s-master deployments]# kubectl get pods
NAME                                READY     STATUS    RESTARTS   AGE
redis-master                        2/2       Running   0          1m
[root@k8s-master deployments]# kubectl get pods redis-master --template='{{(index (index .spec.containers 0).ports 0).containerPort}}{{"\n"}}'
6379
[root@k8s-master deployments]# kubectl port-forward redis-master 6379:6379
Forwarding from 127.0.0.1:6379 -> 6379
^C 
Run Code Online (Sandbox Code Playgroud)

我不知道为什么我的提示被冻结。在我的日志中没有一些错误或警告条目。

journalctl -u kubelet.service -f --since "2018-02-19 10:30:00" --priority 0
-- Logs begin at Sa 2018-02-03 21:21:50 CET. --
Run Code Online (Sandbox Code Playgroud)

kubectl版本

[root@k8s-master deployments]# kubectl version
Client …
Run Code Online (Sandbox Code Playgroud)

kubernetes

3
推荐指数
1
解决办法
1750
查看次数

Boto3删除目录内的对象

我有以下代码段:

import boto3

session = boto3.Session(
    aws_access_key_id="id",
    aws_secret_access_key="secret",
    region_name="us-east-1"
)

s3 = session.resource("s3")
obj = s3.Object("mybucket", "test.txt")


obj.delete()
Run Code Online (Sandbox Code Playgroud)

如果文件位于存储桶的根目录下,它可以正常工作,但我需要删除目录中的文件.我的档案在:mybucket/media/private/test.txt

添加到"mybucket""test.txt"在其中的路径s3.Object()不起作用

python amazon-s3 amazon-web-services boto3

3
推荐指数
1
解决办法
7930
查看次数

如何连接到boto3中的区域

如何实现命令:

boto.ec2.connect_to_region()
Run Code Online (Sandbox Code Playgroud)

使用boto3套件?在文档中似乎没有一目了然

我想这是一个比可拓的回答,您可以在下面找到更简单,更精确的问题

谢谢你的帮助

python boto3

3
推荐指数
1
解决办法
2554
查看次数

了解| Scala中的运算符

我来写代码:

 scala> val a = 0 | 1
 a: Int = 1
 scala> val a = 0 | 1 | 2
 a: Int = 3
 scala> val a = 0 | 1 | 2 | 3
 a: Int = 3
 scala> val a = 0 | 1 | 2 | 3 | 4
 a: Int = 7
Run Code Online (Sandbox Code Playgroud)

我期望的唯一结果| 运算符是第一个命令的结果。我看到它的行为就像一个逻辑,还是在第二个命令中添加了元素。

有人可以解释| 运算符使用整数作为运算符?

scala bitwise-operators logical-operators

3
推荐指数
2
解决办法
64
查看次数

git只删除最后一个隐藏提交

当我的藏匿处多于一个藏匿处时,有时我需要在最后一个藏匿处之前丢弃一两个:

> git stash
stash@{0}: WIP on 0.9.1: e59f763 UPDATE deploy script UPDATE requirements
stash@{1}: WIP on dev: c9f86fb ADD index view ADD return view ADD welcome
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我想放下@{0}。如果我git stash pop遇到合并冲突,则必须手动解决(也许不仅仅是一次),以摆脱隐匿的提交。

通常,我创建另一个分支:

git checkout -b temp  
git stash pop
# solve merge-conflicts
git checkout branch_for_stash@{1}
git stash pop
Run Code Online (Sandbox Code Playgroud)

是否有(git)命令删除最后一个或什至藏匿的提交?

git git-stash

2
推荐指数
1
解决办法
1240
查看次数

scrapy hub - exceptions.ImportError:没有名为pymodm的模块

我可以在本地运行我的scrapy没有任何问题,但是,当我尝试从scrapinghub运行工作时我得到以下错误(连接到mongo atlas云):

exceptions.ImportError: No module named pymodm
Run Code Online (Sandbox Code Playgroud)

我导入使用:

import pymodm
Run Code Online (Sandbox Code Playgroud)

任何帮助深表感谢.

干杯

mongodb scrapy scrapinghub pymodm

1
推荐指数
1
解决办法
461
查看次数

Elasticsearch Python API GET索引统计信息

我正在使用python ES客户端,我想查询有关索引的统计信息。更具体地说,我正在寻找以下端点:

GET /_stats
Run Code Online (Sandbox Code Playgroud)

有谁知道如何使用文档中提到的IndicesClient类?

python python-3.x elasticsearch

1
推荐指数
1
解决办法
616
查看次数