小编Rin*_*nce的帖子

"For"循环第一次迭代

问候pyc-sires和py-ladies,我想询问是否有一种优雅的pythonic方式在第一次循环迭代中执行某些功能.我能想到的唯一可能性是:

first = True
for member in something.get():
    if first:
        root.copy(member)
        first = False
    else:
        somewhereElse.copy(member)
    foo(member)
Run Code Online (Sandbox Code Playgroud)

python iteration algorithm

65
推荐指数
6
解决办法
6万
查看次数

迭代列表切片

我想要一个算法迭代列表切片.切片大小设置在功能之外,可以有所不同.

在我看来它是这样的:

for list_of_x_items in fatherList:
    foo(list_of_x_items)
Run Code Online (Sandbox Code Playgroud)

有没有办法正确定义list_of_x_items或使用python 2.5执行此操作的其他方法?


edit1:澄清 "分区"和"滑动窗口"这两个术语听起来都适用于我的任务,但我不是专家.所以我会更深入地解释这个问题并添加到问题中:

fatherList是我从文件中获取的多级numpy.array.函数必须找到系列的平均值(用户提供系列的长度)平均我正在使用该mean()函数.现在进行问题扩展:

edit2:如何修改你提供的函数来存储额外的项目,并在下一个fatherList被输入函数时使用它们?

例如,如果列表长度为10且块的大小为3,则列表的第10个成员将被存储并附加到下一个列表的开头.


有关:

python iteration loops slice

29
推荐指数
6
解决办法
2万
查看次数

Spring数据休息排序带有下划线的字段

我们@RepositoryRestResourcePagingAndSortingRepository连接到postgres数据库的顶部使用了一个非常简单的设置.我们还配置spring.jackson.property-naming-strategy=SNAKE_CASE了返回漂亮的json.在我们开始排序之前,这一切都很好,很花哨.正如我们所发现的 - 排序要求我们提供实际的类字段名称(我们当然在驼峰的情况下):

get("/thing?sort=dateCreated,desc")

当我们尝试javascript友好

get("/thing?sort=date_created,desc")

它失败了,因为jpa试图用下划线拆分参数.

是否有一种简单的方法让路径params与我们在json中返回的格式相同?

java json spring-data spring-data-jpa spring-data-rest

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

通过一个表单字段上传Django中的多个文件

是否有任何自定义小部件(或特殊魔术方式)通过一个表单字段上传多个文件(或整个文件夹!)?我尝试过这个多文件小部件,但它使用了很多简单的FileFileds.

python forms django upload

7
推荐指数
2
解决办法
9747
查看次数

评估两个或多个列表

你好,codeboys和codegirls!

我遇到了一个看似简单的解决方案的简单问题.但作为一个Python新手,我觉得在某个地方有更好的方法.

假设您有一个混合字符串列表.袋中有两种基本类型的字符串 - 其中带有"="(a =马铃薯)和没有(Lady Jane)的字符串.你需要的是将它们分成两个列表.

显而易见的方法是:

for arg in arguments:
   if '=' in arg:
       equal.append(arg)
   else:
       plain.append(arg)
Run Code Online (Sandbox Code Playgroud)

还有其他更优雅的方式吗?就像是:

equal = [arg for arg in arguments if '=' in arg]
Run Code Online (Sandbox Code Playgroud)

但要分成多个列表?

如果您有多种类型的数据怎么办?

python list

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

在数据库之间复制MongoDb索引

我正在尝试在两个环境之间复制mongo索引。检查了API,没有发现直接的方法。所以我开始编写一个脚本,该脚本连接到一个数据库,遍历集合,获取索引,对其进行突变(因为getIndexes()ensureIndex()具有不同的格式),连接到另一个数据库,擦除索引并将新索引复制到其中。

这一切感觉都有些过分,所以我认为我一定想念一些东西。

有什么建议/好的做法吗?除了制定索引创建策略。

干杯!

indexing mongodb

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

锁定自定义词典

美好的一天蟒蛇,

我想制作一个包含两个主要功能的自定义词典:

  1. 所有键都在创建时声明
  2. 无法添加新密钥或修改当前密钥(值仍可修改)

现在代码是这样的:

class pick(dict):
   """This will make delicious toffee when finished"""
   def __init__(self, *args):
       dict.__init__(self)
       for arg in args:
           self[arg] = None
Run Code Online (Sandbox Code Playgroud)

任何帮助深表感谢.

UPD:

虽然我正在寻找解决方案,但有一个问题:

字典调用在__setitem__初始化时添加项目而不是找到引发错误的键.

cupboard = pick('milk')  #raises error
Run Code Online (Sandbox Code Playgroud)

upd1:

一切都解决了,非常感谢你.

python dictionary locking

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

提供字段访问器方法作为参数

G'day同志.我有个问题.

我有两种完全重复的方法,除了它们访问不同的字段.我无法将字段值作为参数传递,因为访问发生在循环内(简化示例):

   public final class Thing {

        ImmutableList<Box> boxes;

        public int getNumberOfApples() {
            int total = 0;
            for (Box box : boxes) {
                total += box.getApplesCount();
            }
            return total;
        }

        public int getNumberOfPears() {
            int total = 0;
            for (Box box : boxes) {
                total += box.getPearsCount();
            }
            return total;
        }
    }
Run Code Online (Sandbox Code Playgroud)

我可以将我的水果放入地图并将字段名称作为参数传递,但它看起来很脏,我对当前的课程构成非常满意.所以问题是 - 如何重构我的代码以获得单一的类型方法:

public int getNumberOfFruit(SomethingMagic) {
    moreMagic;
    return total;
}
Run Code Online (Sandbox Code Playgroud)

Cheerio.

java

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