小编Cha*_*ffy的帖子

为什么foo = filter(...)返回<filter object>,而不是列表?

在Python IDLE 3.5.0 shell中工作.根据我对内置"过滤器"函数的理解,它会返回列表,元组或字符串,具体取决于您传入的内容.那么,为什么下面的第一个分配工作,而不是第二个('>>>只是交互式Python提示)

>>> def greetings():
    return "hello"

>>> hesaid = greetings()
>>> print(hesaid)
hello
>>> 
>>> shesaid = filter(greetings(), ["hello", "goodbye"])
>>> print(shesaid)
<filter object at 0x02B8E410>
Run Code Online (Sandbox Code Playgroud)

python variables filter variable-assignment

55
推荐指数
3
解决办法
7万
查看次数

在YAML中构建一个字典项数组?

基本上尝试使用这个json可以完成的yaml:

{
models:
 [
  { 
    model: "a"
    type: "x"
    #bunch of properties...
  },
  {
    model: "b"
    type: "y"
    #bunch of properties...
  }
 ]
}
Run Code Online (Sandbox Code Playgroud)

到目前为止,这是我所拥有的,它不起作用,因为我正在重复我的model密钥,但通过保持关键词,这可能是一个正确的方法model吗?

models:
 model:
  type: "x"
  #bunch of properties...
 model:
  type: "y"
  #bunch of properties...
Run Code Online (Sandbox Code Playgroud)

yaml pyyaml

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

什么"|&"在bash中意味着什么?

例如

echo "aaa" |& cat 
Run Code Online (Sandbox Code Playgroud)

|&这里的意思是什么?

有网站建议查找那些?由于大多数搜索引擎不支持搜索特殊字符.

bash

37
推荐指数
3
解决办法
7646
查看次数

为什么"1.real"是语法错误但"1 .real"在Python中有效?

所以我在twitter上看到了这两个 问题.如何1.real语法错误但1 .real不是?

>>> 1.real
  File "<stdin>", line 1
    1.real
         ^
SyntaxError: invalid syntax
>>> 1 .real
1
>>> 1. real
  File "<stdin>", line 1
    1. real
          ^
SyntaxError: invalid syntax
>>> 1 . real
1
>>> 1..real
1.0
>>> 1 ..real
  File "<stdin>", line 1
    1 ..real
       ^
SyntaxError: invalid syntax
>>> 1.. real
1.0
>>> 1 .. real
  File "<stdin>", line 1
    1 .. real
       ^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)

python

31
推荐指数
2
解决办法
1834
查看次数

char*str = {"foo",...}和char str [] [5] = {"foo",...}数组定义有什么区别?

案例1:我写的时候

char*str={"what","is","this"};
Run Code Online (Sandbox Code Playgroud)

然后str[i]="newstring";是有效的,而str[i][j]='j';无效.

案例2:我写的时候

char str[][5]={"what","is","this"};
Run Code Online (Sandbox Code Playgroud)

然后str[i]="newstring";无效,而str[i][j]='J';有效.

为什么会这样?我是一个初学者,在阅读其他答案后已经非常困惑.

c arrays pointers arrayofarrays

30
推荐指数
2
解决办法
2443
查看次数

"docker images"显示图像,"docker rmi"表示"没有这样的图像"或"引用不存在"

由于某些原因,我无法删除docker镜像.这是输出

OS版本:

Linux localhost.localdomain 4.12.13-300.fc26.x86_64 #1 SMP Thu Sep 14 16:00:38 UTC 2017 x86_64 x86_64 x86_64 GNU/Linux
Run Code Online (Sandbox Code Playgroud)

码头版

Client:
 Version:      17.06.2-ce
 API version:  1.30
 Go version:   go1.8.3
 Git commit:   cec0b72
 Built:        Tue Sep  5 20:05:40 2017
 OS/Arch:      linux/amd64

Server:
 Version:      17.06.2-ce
 API version:  1.30 (minimum version 1.12)
 Go version:   go1.8.3
 Git commit:   cec0b72
 Built:        Tue Sep  5 20:06:58 2017
 OS/Arch:      linux/amd64
 Experimental: false`
Run Code Online (Sandbox Code Playgroud)

我没有任何容器:

$ docker ps -a
CONTAINER ID        IMAGE               COMMAND             CREATED                 STATUS              PORTS               NAMES
Run Code Online (Sandbox Code Playgroud)

和我要删除的两个图像:

$ docker images …
Run Code Online (Sandbox Code Playgroud)

linux docker

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

shell脚本中是否有任何互斥/信号量机制?

我正在寻找shell脚本中的互斥/信号量/并发机制.请考虑以下情况:除非"a"用户未关闭共享文件,否则"b"用户无法打开/更新它.我只是想知道如何在shell脚本中实现互斥,信号量,关键部分等.

哪个是在shell脚本中实现锁定机制[文件级别]的最简单方法?

unix bash shell concurrency semaphore

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

在python中作为命令行参数传递的数字不会被解释为整数

我熟悉C,并开始在python中进行实验.我的问题是关于sys.argv命令.我已经读过它用于命令行解释器,但是当我尝试执行一个简单的程序时,我没有得到我期望的结果.

码:

import sys

a = sys.argv[1]
b = sys.argv[2]

print a, b

print a+b
Run Code Online (Sandbox Code Playgroud)

输入:

python mySum.py 100 200
Run Code Online (Sandbox Code Playgroud)

输出:

100 200
100200
Run Code Online (Sandbox Code Playgroud)

当我添加两个参数时,它们被连接而不是两个值被加在一起.似乎这些值被视为字符串.

我怎样才能将它们解释为数字?

python argv

23
推荐指数
4
解决办法
7万
查看次数

为什么当 Python“None 或 True”返回 True 时,pandas“None | True”返回 False?

在纯 Python 中,None or True返回True.
但是,当我|在两个包含 None 值的系列之间执行熊猫时,结果与我预期的不一样:

>>> df.to_dict()
{'buybox': {0: None}, 'buybox_y': {0: True}}
>>> df
    buybox  buybox_y
0   None    True

>>> df['buybox'] = (df['buybox'] | df['buybox_y'])
>>> df
    buybox  buybox_y
0   False   True
Run Code Online (Sandbox Code Playgroud)

预期结果:

>>> df
    buybox  buybox_y
0   True    True
Run Code Online (Sandbox Code Playgroud)

我通过两次应用 OR 操作得到了我想要的结果,但我不明白为什么我应该这样做。

我不是在寻找解决方法(我通过df['buybox'] = (df['buybox'] | df['buybox_y'])连续应用两次来获得它)而是一个解释,因此是标题中的“为什么”。

python python-3.x pandas logical-or

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

在自制安装脚本中绕过提示(按回车)

安装自制软件的非常简单的脚本:

  #!/bin/bash

  ruby -e "$(curl -fsSL https://raw.github.com/Homebrew/homebrew/go/install)"
Run Code Online (Sandbox Code Playgroud)

输出给出:

==> This script will install:
/usr/local/bin/brew
/usr/local/Library/...
/usr/local/share/man/man1/brew.1

Press RETURN to continue or any other key to abort
Run Code Online (Sandbox Code Playgroud)

如何在这样的脚本中按Enter键?期望是最好的路线?

bash homebrew

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