小编los*_*jos的帖子

字典迭代 - 用于dict与dict.items()

当我们遍历下面的字典时,每次迭代都会(正确地)返回一个键值对

for key, value in dict.items():
    print "%s key has the value %s" % (key, value)
Run Code Online (Sandbox Code Playgroud)

'some key'key有值'some value'(重复多次有ak,v对)

以上内容对我有意义,但是如果我们这样做:

for key in dict.items():
    print "%s key has the value %s" % (key, value)
Run Code Online (Sandbox Code Playgroud)

("some key", "some value")有值"some value"(左元组将迭代每个键值对,右值将保持在字典中的第一个值并重复)

我们最终获得在第一个%s(键)和第二个%s(值)中返回的每个k,v对不迭代,它只返回for循环的每次迭代的dict中的第一个值.

我明白,如果你只是迭代,for key in dict那么你只是在迭代密钥.这里因为我们dict.items()只使用for循环中的键来迭代一组元组(通过使用),所以循环应该运行与第一个示例相同的次数,因为密钥和值对的密钥数量相同.

我抓到的麻烦是为什么python在第二个例子中为你提供了整个元组key.


感谢所有人的帮助 - 我想再添加一个问题.

for a,a in dict.items():
    print a
Run Code Online (Sandbox Code Playgroud)

为什么以上打印值,如果我print a,a- 显然两个值都打印两次.如果我输入了,for a,b我会迭代(key,value)对,所以我逻辑上认为我现在迭代 …

python dictionary

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

将对象列表作为单个参数传递

我有两个方法 - 命名onetwo.方法one取一个类List<Person>在哪里person,方法twoPerson类的各个对象.

如何将List<Person>单个对象参数传递给方法two?在List可以包含0或1种以上的元素,我想通过null如果列表中没有的方法所需的全部3个PARAMS two.

def one (List<Person> persons) {

    // check the size of the list
    // pass arguments to method two

    // this works
    two(persons[0], persons[1], persons[2])

    //what I want is 
    two(persons.each { it  + ', '})
}

def two (Person firstPerson, Person secondPerson, Person thirdPerson) {

    // do something with the persons
}
Run Code Online (Sandbox Code Playgroud)

parameters groovy

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

从边缘存储库添加高山软件包

如果我使用的是Alpine 3.8,如何从Alpine Edge存储库中添加特定的程序包?甚至支持吗?据我所知,没有等效的反向端口。

我想添加新版本:https : //pkgs.alpinelinux.org/package/edge/community/armhf/librdkafka

而不是3.8版本中的旧版本:https : //pkgs.alpinelinux.org/package/v3.8/community/s390x/librdkafka

repository package-managers alpine-linux

15
推荐指数
3
解决办法
7980
查看次数

Drools:在数据库中存储规则

目前我将所有规则文件存储在文件系统上(它们有很多版本),并在启动时将它们的不同版本加载到内存中.我想更改为将我的drools文件存储在一个数据库中,并想知道是否有任何解决方案或Drools插件可以促进这个或我应该自己制作?

谢谢.

database rules drools

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

Hazelcast与Ignite基准测试

我使用数据网格作为我的主要"数据库".我注意到Hazelcast和Ignite查询性能之间存在巨大差异.我通过适当的自定义序列化和索引优化了我的数据网格使用情况,但差异仍然是明显的IMO.

由于没有人在这里问过,我将回答我自己的问题以供将来参考.这不是一个抽象(学习)练习,而是一个真实的基准测试,用于模拟大型SaaS系统中的数据网格使用 - 主要用于显示已排序和过滤的分页列表.我主要想知道,与原始无框架Hazelcast和Ignite使用相比,我的通用JDBC-ish数据网格访问层增加了多少开销.但由于我比较苹果和苹果,所以这里是基准.

benchmarking hazelcast ignite

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

如果数据库关闭,如何使Spring服务器启动?

我正在使用Spring Boot(1.4.7)和MyBatis.

spring.main1.datasource.url=jdbc:mariadb://192.168.0.11:3306/testdb?useUnicode=true&characterEncoding=utf8&autoReconnect=true&socketTimeout=5000&connectTimeout=3000
spring.main1.datasource.username=username
spring.main1.datasource.password=password
spring.main1.datasource.driverClassName=org.mariadb.jdbc.Driver
spring.main1.datasource.tomcat.test-on-borrow=true
spring.main1.datasource.tomcat.test-while-idle=true
spring.main1.datasource.tomcat.validation-query=SELECT 1
spring.main1.datasource.tomcat.validation-query-timeout=5000
spring.main1.datasource.tomcat.validation-interval=5000
spring.main1.datasource.tomcat.max-wait=5000
spring.main1.datasource.continue-on-error=true
Run Code Online (Sandbox Code Playgroud)

在Eclipse或Linux服务器上断开数据库时,我无法启动程序错误.(数据库不在localhost上.)

当我尝试使用断开连接的数据库启动程序时,打印此文件.

java.sql.SQLNonTransientConnectionException: Could not connect to address=(host=192.168.0.11)(port=3306)(type=master) : connect timed out
Cause: org.springframework.jdbc.CannotGetJdbcConnectionException: Could not get JDBC Connection; nested exception is java.sql.SQLNonTransientConnectionException: Could not connect to address=(host=192.168.0.11)(port=3306)(type=master) : connect timed out
Stopping service [Tomcat]
Application startup failed
Run Code Online (Sandbox Code Playgroud)

有什么办法吗?

谢谢

java fail-fast spring-boot

14
推荐指数
2
解决办法
5991
查看次数

在 kotlin-multiplatform 上生成 UUID?

是否有任何 kotlin-multiplatform 通用函数来获取 UUID/GUID?

 // ideally something like this
 val newUUID = UUID() // "1598044e-5259-11e9-8647-d663bd873d93"
 println("newUUID = $newUUID")
Run Code Online (Sandbox Code Playgroud)

我不希望使用expect-actual 制作单独的Android 和iOS 版本。

uuid kotlin kotlin-multiplatform

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

SBT组装罐排除

我使用spark(在java API中)并且需要一个可以推送到集群的jar,但是jar本身不应该包含spark.部署作业的应用程序当然应该包括spark.

我想要:

  1. sbt run - 应该编译和执行所有内容
  2. sbt smallAssembly - 创建一个没有火花的罐子
  3. sbt assembly - 创建一个包含所有内容(包括spark)的超级jar,以便于部署.

我有1.和3.工作.关于我怎么可以2的任何想法?我需要将哪些代码添加到build.sbt文件中?

这个问题不仅与火花有关,而且与我可能希望排除的任何其他依赖性无关.

jar sbt sbt-assembly apache-spark

12
推荐指数
2
解决办法
9222
查看次数

如何在 Java 中验证 JSON 模式?

我尝试使用 JSON 模式检查用户详细信息对象。但我不知道如何在 Java 中检查 JSON 对象。

我的架构:

{
     "type" : "object",
     "properties" : {
     "first_name" : {
                     "type" : "string" , 
                     "minLength"  : 3 , 
                     "maxLength" : 255 
                  }, 
   "last_name" : {
                     "type" : "string" , 
                     "minLength"  : 3 , 
                     "maxLength" : 255 
                  },
    "age"       : { 
                     "type" : "integer" , 
                     "minimum" : 16 ,
                      "maximum" : 40
                  },
    "phone_number" : {
                        "type" : "integer",
                        "pattern" : "[6-9][0-9]{9}"
                     } ,
     "email"     : { 
                       "type" : "string",
                       "pattern" : "[a-z0-9]+" …
Run Code Online (Sandbox Code Playgroud)

java json jsonschema

12
推荐指数
2
解决办法
4万
查看次数

如何在H2中创建程序

这似乎与具有相同标题的其他问题重复,但实际上并非如此.

我们的业务逻辑主要是作为DB2存储过程实现的(我看到H2具有DB2兼容模式 - 很好!).

我们如何使用H2进行内存单元测试?

不幸的是,H2似乎缺少其语法中的CREATE PROCEDURE命令.

我不想将Java函数用作存储过程.如果同样的sql文件可以用于测试和生产,那将是最好的...我要求太多了吗?

编辑:我们也使用SQL游标...再次,没有支持的迹象:-(

database db2 stored-procedures h2

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