我有一个简单的脚本,其中第一个参数是为文件名保留的,所有其他可选参数应该传递给脚本的其他部分.
使用Google我发现了这个wiki,但它提供了一个文字示例:
echo "${@: -1}"
Run Code Online (Sandbox Code Playgroud)
我无法得到任何其他工作,例如:
echo "${@:2}"
Run Code Online (Sandbox Code Playgroud)
要么
echo "${@:2,1}"
Run Code Online (Sandbox Code Playgroud)
我从终端得到"坏替换".
问题是什么,除了传递给bash脚本的第一个参数外,我该如何处理?
我安装了Python 3.x(除了Ubuntu上的Python 2.x)并慢慢开始配对我在Python 2.x中使用的模块.
所以我想知道,对于Python 2.x和Python 3.x,我应该采用什么方法让pip变得简单?
我正在研究嵌套matplotlib(MPL)库的文档(个人),它与MPL自己提供的有趣的子模块包不同.我正在编写Python脚本,我希望将从未来的MPL版本中自动生成文档.
我选择了感兴趣的子模块/包,并希望列出我将生成列表并处理它的主要类pydoc
问题是我找不到一种方法来指示Python从字符串加载子模块.这是我尝试的例子:
import matplotlib.text as text
x = dir(text)
Run Code Online (Sandbox Code Playgroud)
.
i = __import__('matplotlib.text')
y = dir(i)
Run Code Online (Sandbox Code Playgroud)
.
j = __import__('matplotlib')
z = dir(j)
Run Code Online (Sandbox Code Playgroud)
以下是通过pprint对上述列表进行3种比较:

我不明白在y对象中加载了什么- 它是基础matplotlib加上其他东西,但它缺少我想要的信息,而且它是matplotlib.text包中的主要类.这是截图(x列表)中的顶级蓝色部分
请不要建议Sphinx采用不同的方法.
我有这种形状的numpy数组:(33,10).当我绘制轮廓时,我会得到这样丑陋的图像:
虽然contour()似乎没有关于平滑或某种插值特征的任何争论.
我不知何故预计提供等高线图的工具也应该提供平滑.
有没有直接的方法在MPL中做到这一点?
我目前知道两个工具:
base64编码器/解码器:
python -m base64 -e <input
python -m base64 -d <input
json验证器和漂亮的打印机
python -m json.tool <input
输入可以是标准输入或文件.
我很好奇SPL是否有其他工具以类似的方式工作?
我需要解析由其他工具生成的文件,这些工具无条件地输出带有UTF-8 BOM头(EFBBBF)的json文件.我很快发现这是问题,因为Python 2.7模块似乎无法解析它:
>>> import json
>>> data = json.load(open('sample.json'))
ValueError: No JSON object could be decoded
Run Code Online (Sandbox Code Playgroud)
删除BOM,解决它,但我想知道是否有另一种方法解析带有BOM头的json文件?
来自pydoc:
re.sub = sub(pattern,repl,string,count = 0,flags = 0)
返回通过替换repl替换字符串中模式的最左边非重叠事件而获得的字符串.repl可以是字符串也可以是可调用的; 如果处理了一个字符串,则反斜杠转义.如果它是可调用的,则传递匹配对象并且必须返回要使用的替换字符串.
示例代码:
import re
print re.sub('class', 'function', 'Class object', re.I)
Run Code Online (Sandbox Code Playgroud)
除非我将模式更改为"Class",否则不会进行替换.
文档没有提到有关此限制的任何内容,因此我假设我可能做错了什么.
这是怎么回事?
我不懂C++.
我有一个程序读取硬编码文件路径,我想让它从命令行读取文件路径.为此我改变了这样的代码:
#include <iostream>
int main(char *argv[])
{
...
}
Run Code Online (Sandbox Code Playgroud)
但是,argv[1]以这种方式暴露的变量似乎是类型指针,我需要它作为一个字符串.如何将此命令行参数转换为字符串?
我有一个字典,其中key是datetime对象,value是整数元组:
>>> d.items()[0]
(datetime.datetime(2012, 4, 5, 23, 30), (14, 1014, 6, 3, 0))
Run Code Online (Sandbox Code Playgroud)
我想将它存储在HDF5数据集中,但是如果我尝试只是转储字典h5py会引发错误:
TypeError:Object dtype dtype('object')没有等效的原生HDF5
什么是"最好"的方式来转换这个字典,以便我可以将它存储在HDF5数据集中?
具体来说,我不想只是将字典转储到numpy数组中,因为它会使基于日期时间查询的数据检索变得复杂.
我已经扫描了一些600 dpi,~9.36x12.67英寸的材料,并以PostScript(PS)格式编写.
现在,当我尝试使用Ghostscript(GS)将PS转换为PDF时,我得到剪辑输出,因为我假设GS的默认页面大小设置为A4.我在这里找到了GS的可用模板:http://www.ghostscript.com/doc/9.06/Use.htm#Known_paper_sizes但没有一个与我的PS文件的尺寸紧密匹配,所以:
我可以指示GS输出自定义大小,如果是这样,如何?
-sPAPERSIZE 指令似乎只接受预定义的模板名称,如链接文档中所示.
python ×7
matplotlib ×2
bash ×1
c++ ×1
ghostscript ×1
h5py ×1
json ×1
pdf ×1
pip ×1
python-2.7 ×1
python-3.x ×1
regex ×1
shell ×1