小编dre*_*mac的帖子

使用Python中的列表扩展的意外行为

我试图理解扩展如何在Python中工作,它并没有完全按照我的期望.例如:

>>> a = [1, 2, 3]
>>> b = [4, 5, 6].extend(a)
>>> b
>>> 
Run Code Online (Sandbox Code Playgroud)

但我原以为:

[4, 5, 6, 1, 2, 3]
Run Code Online (Sandbox Code Playgroud)

为什么返回None而不是扩展列表?

python arrays list immutability

18
推荐指数
3
解决办法
8616
查看次数

PHP中类似Java的集合

我正在学习PHP5(上次我检查PHP是在PHP4天)并且我很高兴看到PHP5 OO比PHP4更像Java,但仍有一个问题让我感到非常不舒服,因为我的Java背景:阵列.

我正在阅读"Proffesional PHP6"(Wrox),它显示了自己的Collection实现.我发现了其他类似于http://aheimlich.dreamhosters.com/generic-collections/Collection.phps的基于SPL的文章.我还发现SPL中有某种Collection(ArrayObject)

但是,我很惊讶因为我没有真正看到人们在PHP中使用Collections,他们似乎更喜欢数组.

那么,在PHP中使用Collections就像人们在Java中使用ArrayList而不是基本数组一样,这不是一个好主意吗?毕竟,php数组并不像java数组.

php java collections language-comparisons

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

使用PHP进行JSON模式验证

是否有任何PHP库可以针对JSON模式验证JSON对象?

php validation json jsonschema

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

MySQL:将逗号分隔列表拆分为多行

我有一个非标准化的表,其中一列包含逗号分隔列表,该列表是另一个表的外键:

+----------+-------------+   +--------------+-------+
| part_id  | material    |   | material_id  | name  |
+----------+-------------+   +--------------+-------+
|      339 | 1.2mm;1.6mm |   |            1 | 1.2mm |
|      970 | 1.6mm       |   |            2 | 1.6mm |
+----------+-------------+   +--------------+-------+
Run Code Online (Sandbox Code Playgroud)

我想将这些数据读入一个不提供过程语言的搜索引擎.

那么,有没有一种方法,要么做一个加入此列运行该数据插入相应的条目到一个新表的查询?结果数据应如下所示:

+---------+-------------+
| part_id | material_id |
+---------+-------------+
|     339 |           1 |
|     339 |           2 |
|     970 |           2 |
+---------+-------------+
Run Code Online (Sandbox Code Playgroud)

如果DBMS支持函数返回一个表但MySQL显然没有,我可以想到一个解决方案.

mysql sql delimiter delimiter-separated-values

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

#ql在sql中意味着什么?

有谁知道OR 1#在mysql注入的上下文中有什么意思?

mysql sql syntax comments

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

在SQL中与NULL值连接

Column1      Column2
-------      -------
 apple        juice
 water        melon
 banana
 red          berry       
Run Code Online (Sandbox Code Playgroud)

我有一个有两列的表.Column1有一组单词,Column2也有一组单词.我想用+运算符连接它们而没有空格.

例如:applejuice

问题是,如果第二列中有空值,我只想将第一个元素作为结果.

例如:香蕉

Result
------
applejuice
watermelon
banana
redberry
Run Code Online (Sandbox Code Playgroud)

但是,当我使用column1 + column2时,如果Comunm2为NULL,则它给出NULL值.我希望结果是"香蕉".

sql database string null concatenation

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

带有可选占位符的string.format()

我有以下Python代码(我使用的是Python 2.7.X):

my_csv = '{first},{middle},{last}'
print( my_csv.format( first='John', last='Doe' ) )
Run Code Online (Sandbox Code Playgroud)

我得到一个KeyError例外,因为没有指定'middle'(这是预期的).但是,我希望所有这些占位符都是可选的.如果未指定这些命名参数,我希望删除占位符.所以上面打印的字符串应该是:

John,,Doe
Run Code Online (Sandbox Code Playgroud)

是否有内置功能使这些占位符可选,或者是否需要更深入的工作?如果是后者,如果有人能告诉我最简单的解决方案,我会很感激!

python string-formatting template-variables

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

什么是Ruby相当于Python的defaultdict?

在Python中,我可以创建一个散列,其中每个元素在首次引用时都具有默认值(也称为"autovivification").这是一个例子:

from collections import defaultdict
d = defaultdict(int)
d["new_key"] += 1
print d
Run Code Online (Sandbox Code Playgroud)

打印dict显示"new_key"的值为1.

Ruby中的等价物是什么?此代码抛出错误:

d = {}
d[:new_key] += 1
puts d

test.rb:3:in `<main>': undefined method `+' for nil:NilClass (NoMethodError)
Run Code Online (Sandbox Code Playgroud)

ruby python dictionary language-comparisons autovivification

17
推荐指数
3
解决办法
3857
查看次数

使用百分号的Python字符串格式

我正在努力做到以下几点:

>>> x = (1,2)
>>> y = 'hello'
>>> '%d,%d,%s' % (x[0], x[1], y)
'1,2,hello'
Run Code Online (Sandbox Code Playgroud)

但是,我有x两个以上的长项,所以我试过:

>>> '%d,%d,%s' % (*x, y)
Run Code Online (Sandbox Code Playgroud)

但这是语法错误.如果不像第一个例子那样编制索引,这样做的正确方法是什么?

python string string-formatting python-3.x

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

使用 JMESPath 进行不区分大小写的搜索

问题很简单。如何使用 JMESPath 进行不区分大小写的搜索?

foo假设要在此 JSON 中搜索:

[
  "foo",
  "foobar",
  "barfoo",
  "bar",
  "baz",
  "barbaz",
  "FOO"
]
Run Code Online (Sandbox Code Playgroud)

这是区分大小写的搜索查询:

[?contains(@, 'foo')]
Run Code Online (Sandbox Code Playgroud)

它会返回,["foo", "foobar", "barfoo"]但会错过"FOO"

case-sensitive lowercase jmespath

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