我可以强制R使用常规数字而不是使用e+10
类似符号吗?我有:
1.810032e+09
# and
4
Run Code Online (Sandbox Code Playgroud)
在同一个向量内,并希望看到:
1810032000
# and
4
Run Code Online (Sandbox Code Playgroud)
我正在为一个老式程序创建输出,我必须使用编写一个文本文件cat
.到目前为止工作正常,但我根本无法使用e+10
那里的符号.
可能重复:
作为实例方法的结果的参数的默认值
虽然可以在python中将默认值设置为函数参数:
def my_function(param_one='default')
...
Run Code Online (Sandbox Code Playgroud)
似乎无法访问当前实例(self):
class MyClass(..):
def my_function(self, param_one=self.one_of_the_vars):
...
Run Code Online (Sandbox Code Playgroud)
我的问题:
你能建议我自动在R中加载包裹的方法吗?我的意思是,我想在R中开始一个会话,而不需要library('package name')
多次使用.假设我下次启动R时下载了我想要使用的所有软件包.
我正在尝试将matplotlib的默认字体更改为Helvetica Neue.在EPD/Canopy的Mac上,一切都很好.
现在尝试在ubuntu上做同样的事情并且它不起作用.
这就是我做的:
已安装Helvetica Neue
$ fc-match 'Helvetica Neue':Light
HelveticaNeue-Light.otf: "Helvetica Neue" "??"
Run Code Online (Sandbox Code Playgroud)将odt/dfont转换为ttf:
fondu -show HelveticaNeue.dfont
Run Code Online (Sandbox Code Playgroud)将matplotlibrc更改为
$ cat ~/.config/matplotlib/matplotlibrc
...
font.family: Helvetica Neue
Run Code Online (Sandbox Code Playgroud)
我也尝试过:
font.family: sans-serif
font.sans-serif: Helvetica Neue
Run Code Online (Sandbox Code Playgroud)我删除了字体缓存
rm ~/.config/matplotlib/fontList.cache
Run Code Online (Sandbox Code Playgroud)但这些步骤都不适合我.
$ python -c 'from matplotlib import pyplot as plt; plt.plot(1); plt.savefig("/tmp/test.png")'
/usr/local/lib/python2.7/dist-packages/matplotlib-1.3.0-py2.7-linux-x86_64.egg/matplotlib/font_manager.py:1236:
UserWarning: findfont: Font family ['Helvetica Neue'] not found. Falling back to Bitstream Vera Sans
Run Code Online (Sandbox Code Playgroud)
(prop.get_family(),self.defaultFamily [fontext]))
版本是1.3.0
$ python -c 'import matplotlib; print matplotlib.__version__'
1.3.0
Run Code Online (Sandbox Code Playgroud)
我也尝试过移动字体,~/.config/matplotlib/fonts/ttf
但它没有用.
编辑: 建议我尝试为特定文本选择特定字体.
import matplotlib …
Run Code Online (Sandbox Code Playgroud) 我几乎没有使用我的macbook pro上的功能键.我大多只是将它们用于音量,亮度等.现在我已经开始玩星际争霸2了,我想用它们而不必按下fn键.
我想写一个小的shell脚本,它将翻转"使用所有F1,F2等键作为标准功能键"复选框.我以为我可以使用defaults命令来更改它,但我不确定要使用什么值.这样我每次想玩的时候都不需要改变首选项.我可以运行脚本,即切换键,甚至启动游戏.
有任何想法吗?
是否可以设置或覆盖结构的默认状态?
作为一个例子,我有一个
enum something{a,b,c,d,e};
Run Code Online (Sandbox Code Playgroud)
以及为该枚举链接2个值的结构
struct SomethingData
{
something type;
int Value;
double Multipler;
SomethingData(something enumVal, int intVal, double DblVal) {...}
}
Run Code Online (Sandbox Code Playgroud)
但是我可以指定默认状态
SomethingData(something.c,0,1);
Run Code Online (Sandbox Code Playgroud) 任何人都可以回答为什么core.preloadindex默认为false?有任何陷阱吗?我无法想象性能损失.
考虑一个带有包含数组的dict的首选项plist:
让我们创建它:
defaults write org.my.test '{aDict = {anArray = ();};}'
Run Code Online (Sandbox Code Playgroud)
然后回过头来看看结构更好:
$defaults read org.my.test
{
aDict = {
anArray = (
);
};
}
Run Code Online (Sandbox Code Playgroud)
现在,如何anArray
使用defaults write
命令添加值?
我知道有一种-array-add
类型可以为数组添加值,但是如何指定数组元素的键路径?
我试过这个,但这不起作用:
defaults write org.my.test aDict.anArray -array-add "a value"
Run Code Online (Sandbox Code Playgroud)
实际上,我需要添加一个非字符串类型,所以我还需要能够指定类型,例如-bool YES
.
(注:我不能使用PlistBuddy也不plutil,因为这需要会影响到实际偏好)
我正在使用ConfigParser从配置文件加载数据,如下所示:
test.conf:
[myfiles]
fileone: %(datadir)s/somefile.foo
filetwo: %(datadir)s/nudderfile.foo
Run Code Online (Sandbox Code Playgroud)
load.py:
import ConfigParser
config = ConfigParser.ConfigParser({'datadir': '/tmp'})
config.read('test.conf')
print config.items('myfiles')
print config.get('myfiles', 'datadir')
Run Code Online (Sandbox Code Playgroud)
输出:
$ python load.py
[('datadir', '/tmp'), ('filetwo', '/tmp/nudderfile.foo'), ('fileone', '/tmp/somefile.foo')]
/tmp
Run Code Online (Sandbox Code Playgroud)
我很惊讶变量替换的默认值('datadir', '/tmp')
是作为一部分出现的.items()
并.get()
返回,就像它们是配置文件中的值一样.这种行为有望吗?任何解决方法,以便我可以简单地迭代.items()
而不获取那里的默认字典值,但仍然使用魔术插值?
参考:http://docs.python.org/library/configparser.html
谢谢!
更新:已经指出这是预期的行为:默认值与配置文件中的任何其他名称/值对一样.同样,配置文件中的名称/值对也可用于"魔术插值",所以如果我定义:
foo: bar
zap: %(foo)snowl
Run Code Online (Sandbox Code Playgroud)
我去拿 [... ('zap': 'barnowl')]
这非常简洁,但我仍然想知道我是否能完成我想要完成的任务:迭代我的配置文件中的名称/值对,插入变量,没有默认值.
我的具体情况是:我想用类似的东西初始化配置对象{basedir: '/foo/bar'}
,因为某些文件的绝对路径因安装而异.然后我需要传递该配置对象并让各种其他类遍历文件.我不希望每个读取配置的类都必须知道它是使用某些默认值初始化的,并且它应该忽略它们,因为它们不是实际文件.这可能吗?有什么方法可以隐藏.item()和.get()的默认值但仍有插值?谢谢!
我在跨范围的Sass中使用变量默认值时遇到问题.我的测试例子是:
@mixin foo {
$val: 'red' !default;
.bar {
color: $val;
}
}
@include foo;
.class1 {
$val: 'green';
@include foo;
.class11 {
@include foo;
}
}
$val: 'black';
.class2 {
@include foo;
}
.class3 {
$val: 'blue';
@include foo;
}
.class4 {
@include foo;
}
Run Code Online (Sandbox Code Playgroud)
它编译为:
.bar {
color: "red";
}
.class1 .bar {
color: "red";
}
.class1 .class11 .bar {
color: "red";
}
.class2 .bar {
color: "black";
}
.class3 .bar {
color: "blue";
}
.class4 .bar { …
Run Code Online (Sandbox Code Playgroud)