我希望在Bash if语句中包含一些条件组.具体来说,我正在寻找以下内容:
if <myCondition1 and myCondition2> or <myCondition3 and myCondition4> then...
Run Code Online (Sandbox Code Playgroud)
我如何按照我在Bash中使用if语句描述的方式将条件组合在一起?我感谢你对此有任何想法.
我有一个可执行文件,使用方式如下:
executable -v -i inputFile.txt -o outputFile.eps
Run Code Online (Sandbox Code Playgroud)
为了提高效率,我想使用Bash变量代替输入文件.所以,我想做类似以下的事情:
executable -v -i ["${inputData}"] -o outputFile.eps
Run Code Online (Sandbox Code Playgroud)
方括号代表一些聪明的代码.
你知道一些技巧可以让我以这种方式将信息传递到所描述的可执行文件中吗?
非常感谢你的协助
作为一个实验,我想看看如何从URL导入Python模块.这里的假设目标是从一个中心位置导入,使模块保持最新状态.怎么可以这样做?
我的尝试如下:
>>> import urllib
>>>
>>> def import_URL(URL):
... exec urllib.urlopen(URL) in globals()
...
>>> import_URL("https://cdn.rawgit.com/wdbm/shijian/master/shijian.py")
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "<stdin>", line 2, in import_URL
TypeError: exec: arg 1 must be a string, file, or code object
Run Code Online (Sandbox Code Playgroud)
编辑:Martijn Pieters确定了示例代码的修复程序,该代码导致远程模块的字符串表示形式.结果代码如下:
import urllib
def import_URL(URL):
exec urllib.urlopen(URL).read() in globals()
Run Code Online (Sandbox Code Playgroud) 我试图将多处理添加到一些代码中,这些代码具有我无法修改的功能.我想将这些函数作为作业异步提交到多处理池.我正在做的事情很像这里显示的代码.但是,我不确定如何跟踪结果.如何知道返回结果对应的应用函数?
要强调的重点是我无法修改现有函数(其他依赖于它们的东西保持原样),并且结果可以按照与函数作业应用于池的顺序不同的顺序返回.
感谢您的任何想法!
编辑:一些尝试代码如下:
import multiprocessing
from multiprocessing import Pool
import os
import signal
import time
import inspect
def multiply(multiplicand1=0, multiplicand2=0):
return multiplicand1*multiplicand2
def workFunctionTest(**kwargs):
time.sleep(3)
return kwargs
def printHR(object):
"""
This function prints a specified object in a human readable way.
"""
# dictionary
if isinstance(object, dict):
for key, value in sorted(object.items()):
print u'{a1}: {a2}'.format(a1=key, a2=value)
# list or tuple
elif isinstance(object, list) or isinstance(object, tuple):
for element in object:
print element
# other
else: …
Run Code Online (Sandbox Code Playgroud) 假设我有6个不同的单元格(不是全部都在一行).我想检查这些单元格中的值是否相等.我怎么能用一个功能呢?我希望函数只是显示"EQUAL"或"NOT EQUAL"(或者可能改变单元格背景颜色?).
我有以下表格的列表:
[[0, 5.1, 3.5, 1.4, 0.2],
[0, 4.9, 3.0, 1.4, 0.2],
[0, 4.7, 3.2, 1.3, 0.2],
[1, 4.6, 3.1, 1.5, 0.2],
[1, 5.0, 3.6, 1.4, 0.2],
[1, 5.4, 3.9, 1.7, 0.4],
[1, 4.6, 3.4, 1.4, 0.3]]
Run Code Online (Sandbox Code Playgroud)
我想切出第一列并将其作为新元素添加到每行数据(因此在列表中的每个奇数位置),将其更改为以下形式:
[[5.1, 3.5, 1.4, 0.2], [0],
[4.9, 3.0, 1.4, 0.2], [0],
[4.7, 3.2, 1.3, 0.2], [0],
[4.6, 3.1, 1.5, 0.2], [1],
[5.0, 3.6, 1.4, 0.2], [1],
[5.4, 3.9, 1.7, 0.4], [1],
[4.6, 3.4, 1.4, 0.3], [1],]
Run Code Online (Sandbox Code Playgroud)
我怎么能这样做?
到目前为止,我已通过以下方式提取了必要的信息:
targets = [element[0] for element in …
Run Code Online (Sandbox Code Playgroud) 我试图遵循一些步骤来贡献GitHub上的存储库,其中一个步骤不起作用.步骤如下:https://github.com/wdbm/qTox/blob/master/CONTRIBUTING.md#how-to-open-a-pull-request.
我在GitHub上分叉存储库.
我克隆了存储库:
git clone https://github.com/<YOUR_USER>/qTox.git
Run Code Online (Sandbox Code Playgroud)
我访问本地存储库的目录:
cd qTox
Run Code Online (Sandbox Code Playgroud)
我添加了上游远程,以便能够从上游存储库中获取:
git remote add upstream https://github.com/qTox/qTox.git
Run Code Online (Sandbox Code Playgroud)
我尝试将本地主分支指向上游存储库:
git branch master --set-upstream-to=upstream/master
Run Code Online (Sandbox Code Playgroud)
此命令失败,并显示以下错误消息:
error: the requested upstream branch 'upstream/master' does not exist
hint:
hint: If you are planning on basing your work on an upstream
hint: branch that already exists at the remote, you may need to
hint: run "git fetch" to retrieve it.
hint:
hint: If you are planning to push out a new local branch that …
Run Code Online (Sandbox Code Playgroud) 是否有一些技巧可以让人们使用bc(或其他一些标准实用程序)来返回任意数量的数字的标准偏差?为方便起见,假设数字以下列方式存储在Bash变量中:
myNumbers="0.556
1.456
45.111
7.812
5.001"
Run Code Online (Sandbox Code Playgroud)
所以,我正在寻找的答案将采用如下形式:
standardDeviation="$(echo "${myNumbers}" | <insert magic here>)"
Run Code Online (Sandbox Code Playgroud) 我正在尝试Ctrl
Alt
direction key
在后台运行的 Python 脚本中捕获快捷键(例如)。当我尝试这样做时,我遇到了错误。我的代码如下:
import Xlib
import Xlib.display
def process_event(event):
keycode = event.detail
if event.type == Xlib.X.KeyPress:
print(keycode)
def main():
# current display
display = Xlib.display.Display()
rootWindow = display.screen().root
# catch keypress events
rootWindow.change_attributes(event_mask = Xlib.X.KeyPressMask)
keys = [10, 11]
for keycode in keys:
rootWindow.grab_key(
keycode,
Xlib.X.Mod1Mask, #Xlib.X.AnyModifier,
1,
Xlib.X.GrabModeAsync,
Xlib.X.GrabModeAsync
)
while True:
event = rootWindow.display.next_event()
process_event(event)
if __name__ == '__main__':
main()
Run Code Online (Sandbox Code Playgroud)
我得到的错误如下:
<class 'Xlib.protocol.request.QueryExtension'>
X protocol error:
<class 'Xlib.error.BadAccess'>: code = 10, resource_id = …
Run Code Online (Sandbox Code Playgroud) 我有一个模块存储库,其中包含模块代码、README.md 文件和存储在目录中的 README.md 文件中使用的图像images/
(使用相对链接链接到 README.md 中)。为了注册和上传模块到 PyPI,我有文件setup.py
和MANIFEST.in
. 事情应该如何使得图像包含并出现在 PyPI 在线文档中(就像出现在假设页面https://pypi.python.org/pypi/junkmodule 中一样)?
我目前拥有的MANIFEST.in
和setup.py
(不包括 PyPI 在线文档中的图像)如下:
include LICENSE
include README.md
include images/*
include setup.py
include junkmodule.py
Run Code Online (Sandbox Code Playgroud)
#!/usr/bin/python
# -*- coding: utf-8 -*-
import os
import setuptools
def main():
setuptools.setup(
name = "junkmodule",
version = "0.0.0.1",
description = "provides nothing much",
long_description = Markdown_to_reStructuredText("README.md"),
url = "https://github.com/junkuser1/junkmodule",
author = "L. Ron. Hubbard",
author_email = "lrh@sern.ch",
license = "GPLv3",
py_modules …
Run Code Online (Sandbox Code Playgroud)