小编dre*_*mac的帖子

VSCode 扩展写入和打开文件

我的要求其实很简单,我想写一个文件并在vscode中打开它。但我无法让它工作:

var content = rec[rt.fields[field]];
var filePath = path.join(vscode.workspace.rootPath, selected.label + '.' + field);
fs.writeFileSync(filePath, content, 'utf8');

var openPath = vscode.Uri.parse(filePath);
vscode.workspace.openTextDocument(openPath).then(doc => {
  vscode.window.showTextDocument(doc);
});
Run Code Online (Sandbox Code Playgroud)

我收到以下错误消息,但不知道这意味着什么:

无法打开 c:%5CUsers%5Cmak%5C.sneditor%5Csoftpointdev1.service-now.com%5CRMCostPlanHelper.js。详细信息:没有 uri 'c:%5CUsers%5Cmak%5C.sneditor%5Csoftpointdev1.service-now.com%5CRMCostPlanHelper.js' 的模型,也没有方案“c”的解析器。

file-io visual-studio-code vscode-extensions

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

什么是 Python 的 *Args 和 **kwargs 在 PHP 中的等价物?

除了用值声明可选变量之外,谷歌勋爵没有给我任何东西,这样它们就可以被传递到代码中而不会给你一个错误。在 PHP 中甚至有等价于 *Args 或 **kwargs 吗?

干杯

php python language-comparisons variadic-functions

5
推荐指数
1
解决办法
4031
查看次数

yaml.dump在多行字符串中添加不需要的换行符

我有一个多行字符串:

>>> import credstash
>>> d = credstash.getSecret('alex_test_key', region='ap-southeast-2')
Run Code Online (Sandbox Code Playgroud)

要查看原始数据(前162个字符):

>>> credstash.getSecret('alex_test_key', region='ap-southeast-2')[0:162]
u'-----BEGIN RSA PRIVATE KEY-----\nMIIEogIBAAKCAQEA6oySC+8/N9VNpk0gJS7Gk8vn9sYN7FhjpAQnoHRqTN/Oaiyx\nxk2AleP2vXpojA/DHldT1JO+o3j56AHD+yfNFFeYvgWKDY35g49HsZZhbyCEAB45\n'
Run Code Online (Sandbox Code Playgroud)

和:

>>> print d[0:162]                                                                                                                                                                                          
-----BEGIN RSA PRIVATE KEY-----
MIIEogIBAAKCAQEA6oySC+8/N9VNpk0gJS7Gk8vn9sYN7FhjpAQnoHRqTN/Oaiyx
xk2AleP2vXpojA/DHldT1JO+o3j56AHD+yfNFFeYvgWKDY35g49HsZZhbyCEAB45
Run Code Online (Sandbox Code Playgroud)

我写一个YAML文件:

>>> import yaml
>>> with open('foo.yaml', 'w') as f:                                                                                                                                                                        
...     yaml.dump(d, f, default_flow_style=False, explicit_start=True)
... 
Run Code Online (Sandbox Code Playgroud)

现在看起来像这样:

$ head -5 foo.yaml 
--- !!python/unicode '-----BEGIN RSA PRIVATE KEY-----

  MIIEogIBAAKCAQEA6oySC+8/N9VNpk0gJS7Gk8vn9sYN7FhjpAQnoHRqTN/Oaiyx

  xk2AleP2vXpojA/DHldT1JO+o3j56AHD+yfNFFeYvgWKDY35g49HsZZhbyCEAB45
Run Code Online (Sandbox Code Playgroud)

即每行有两个换行符。

现在,如果我将其读回到字符串中,则可以看到往返一切正常:

>>> with open('foo.yaml', 'r') as f:
...     d = yaml.load(f)
... 
>>> print d[0:162]
-----BEGIN RSA PRIVATE KEY-----
MIIEogIBAAKCAQEA6oySC+8/N9VNpk0gJS7Gk8vn9sYN7FhjpAQnoHRqTN/Oaiyx
xk2AleP2vXpojA/DHldT1JO+o3j56AHD+yfNFFeYvgWKDY35g49HsZZhbyCEAB45
Run Code Online (Sandbox Code Playgroud)

(但是,我不明白为什么。)

我的真正问题是,如果人们阅读了此YAML文件,他们可能会像我一样假设我的程序破坏了私钥文件的格式。 …

python serialization pyyaml

5
推荐指数
1
解决办法
4277
查看次数

停止 Excel 科学计数法转换

有没有办法阻止 EXCEL将数据转换为科学记数法?

Microsoft Excel 显然假定任何包含数字和 E 的数据都应该是科学记数法并将其转换。

17195E000039自动更改为1.7195E+43

17221E000112自动更改为1.7221E+116

有没有办法阻止 Excel 执行此操作,这样它就不会继续给我们所有不想使用科学记数法的用户带来问题?我无法预见任何时候我会想要将任何东西转换为科学记数法。这种无用的功能只会导致问题。

如何阻止 Excel 尝试将文本转换为科学数据而不先手动执行某些操作?

不幸的是,数据来自另一个导出到 Excel 的系统,我无法更改。我无法事先手动更改页面,事后浏览很糟糕。

excel

5
推荐指数
1
解决办法
3174
查看次数

如何制定必要的规则取决于情况

我有一个很大的json文档,如果其他字段具有确切值,则应在其中输入某些字段。例如

document = {'is_realty_address': False, 'postcode': 111111}
Run Code Online (Sandbox Code Playgroud)

如果is_realty_address == False,则必须提供邮政编码。所有规则(“必需”除外)都应用于文档中存在的字段,因此当我拥有

document = {'is_realty_address': False}
Run Code Online (Sandbox Code Playgroud)

规则对我的情况无济于事,因为我有很多“有条件需要”的字段,这些字段取决于许多不同的字段。因此,规则将使我的架构非常复杂。依赖关系也不起作用。我试过了:

{'postcode': {'dependencies': {'is_realty_address': False}, 'required': True}}
Run Code Online (Sandbox Code Playgroud)

如果邮政编码没有出现在文档中,则返回错误,无论is_realty_address的值是多少

v = Validator()
print(v.validate({'is_realty_address': False}, schema))
print(v.errors)

print(v.validate({'is_realty_address': True}, schema))
print(v.errors)
Run Code Online (Sandbox Code Playgroud)

此代码返回:

False
{'postcode': ['required field']}
False
{'postcode': ['required field']}
Run Code Online (Sandbox Code Playgroud)

我还尝试实现验证方法:

def _validate_conditional_required(self, conditional_required, field, value):
    """
    :param conditional_required:
    :param field:
    :param value:
    :return:
    The rule's arguments are validated against this schema:
    {'type': 'dict'}
    """
    for conditional_field, conditional_value in conditional_required.items():
        if self.document[conditional_field] == conditional_value and field not in …
Run Code Online (Sandbox Code Playgroud)

python validation json cerberus

5
推荐指数
1
解决办法
1124
查看次数

str.format()与嵌套字典

我想使用str.format()方法,如下所示:

my_str = "Username: {username}, User data: {user_data.attribute}".format(**items)
Run Code Online (Sandbox Code Playgroud)

并将其应用于项目,如下所示:

items = {
    "username" : "Peter",
    "user_data" : {
         "attribute" : "foo"
    }}
Run Code Online (Sandbox Code Playgroud)

这是可行的,如果是的话,那怎么样?如果没有,我对你推荐的方法感兴趣.

python string.format dictionary

5
推荐指数
1
解决办法
1078
查看次数

如何从 Python 导入正确调用 jsonnet

我正在使用 jsonnet 构建将由 Python 代码使用的 json 对象,使用bindings从 Python 调用 jsonnet 。我想设置我的目录结构,以便 jsonnet 文件位于与运行 Python 代码的位置相关的一个或多个子目录中,例如:

foo.py jsonnet/ jsonnet/bar.jsonnet jsonnet/baz.libsonnet

运行foo.py然后应该能够使用_jsonnet.evaluate_snippet()从文件中读取的字符串jsonnet/,从jsonnet/. 做到这一点的最佳方法是什么?

python python-import jsonnet

5
推荐指数
1
解决办法
4497
查看次数

d3.js 如何从 csv 或 table 生成树层次结构

我有一个包含以下数据的 csv:

world,country,state

World,US,CA

World,US,NJ

World,INDIA,OR

World,INDIA,AP
Run Code Online (Sandbox Code Playgroud)

我需要转换为树层次结构,如下所示:

{

"name": "World",
"children": [
  { "name": "US",
      "children": [
       { "name": "CA" },
       { "name": "NJ" }
     ]
  },
  { "name": "INDIA",
      "children": [
      { "name": "OR" },
      { "name": "TN" }
     ]
  }
Run Code Online (Sandbox Code Playgroud)

] };

使用 d3.nest 我只能得到一个 json 数组,而不是一棵名为“children”的树。我还需要做些什么吗?阅读 API 并没有真正的帮助,而且我在搜索的任何地方都找不到进行转换的代码片段。

javascript tree hierarchical-data d3.js

5
推荐指数
1
解决办法
3111
查看次数

有条件需要的 jsonSchema 属性取决于父对象

根据这个问题jsonschema attribute conditionally required,我可以应用条件必需的属性。但是,它只能依赖于同一级别对象的属性。在某些情况下,我希望所需的一个属性依赖于其父对象属性,这可能吗?对于下面的例子:

{
  type: 'object',
  properties: {
    { 
      os: { type: 'string', enum: ['macOs', 'windows'] },
      specs: {
        macModel: { 
          type: 'string', 
          enum: ['macbook air', 'macbook pro', 'macbook']
        },
        memory: { type: 'number' }
      }
    }
  }
}
Run Code Online (Sandbox Code Playgroud)

是否可以满足这个要求:仅当/os等于macOs时才需要/spec/macModel

validation jsonschema conditional-statements

5
推荐指数
1
解决办法
2371
查看次数

自定义 VS Code 扩展(上下文菜单命令)

我正在使用这个 VS Code扩展,我想更改命令在上下文菜单中的显示位置。我可以通过直接修改package.json来做到这一点。例如,我在editor/context列表中添加了(大约第 100 行),这个:

{
    "command": "fileutils.renameFile",
    "group": "edit"
} 
Run Code Online (Sandbox Code Playgroud)

它奏效了,我可以在我的上下文菜单中看到重命名命令,但是......当有更新时,我将失去我的编辑。所以我试图在 中添加这段代码,C:\Users\<user>\AppData\Roaming\Code\User\settings.json但它不起作用。

如何自定义 VS Code 扩展,尤其是editor/context命令?

visual-studio-code vscode-extensions

5
推荐指数
1
解决办法
985
查看次数