小编dre*_*mac的帖子

PYTHONPATH与sys.path

另一位开发人员和我不同意是否应该使用PYTHONPATH或sys.path来允许Python在用户(例如,开发)目录中查找Python包.

我们有一个具有典型目录结构的Python项目:

Project
    setup.py
    package
        __init__.py
        lib.py
        script.py
Run Code Online (Sandbox Code Playgroud)

在script.py中,我们需要这样做import package.lib.当软件包安装在site-packages中时,script.py可以找到package.lib.

但是,当从用户目录工作时,还需要做其他事情.我的解决方案是将我的PYTHONPATH设置为包含"〜/ Project".另一位开发人员希望将这行代码放在script.py的开头:

sys.path.append(os.path.dirname(os.path.dirname(os.path.abspath(__file__))))
Run Code Online (Sandbox Code Playgroud)

这样Python就可以找到本地副本了package.lib.

我认为这是一个坏主意,因为这行只对开发人员或从本地副本运行的人有用,但我不能说明为什么这是一个坏主意.

我们应该使用PYTOHNPATH,sys.path,还是要么?

python python-import pythonpath sys.path

79
推荐指数
6
解决办法
8万
查看次数

Notepad ++逐步替换

假设我想拥有10行数据,但我想为每行或每段数据增加一个值.如何增加该值?

例如....如果我有这些行,是否有一种正则表达式替换id值来增加?

<row id="1" />
<row id="1" />
<row id="1" />
<row id="1" />
<row id="1" />
Run Code Online (Sandbox Code Playgroud)

---这就是我希望它看起来像......(如果第一行的id上升一个就好了)

<row id="1" />
<row id="2" />
<row id="3" />
<row id="4" />
<row id="5" />
Run Code Online (Sandbox Code Playgroud)

regex notepad++ sequential

79
推荐指数
4
解决办法
9万
查看次数

如何合并YAML数组?

我想在YAML中合并数组,并通过ruby加载它们 -

some_stuff: &some_stuff
 - a
 - b
 - c

combined_stuff:
  <<: *some_stuff
  - d
  - e
  - f
Run Code Online (Sandbox Code Playgroud)

我想将组合数组作为 [a,b,c,d,e,f]

我收到错误:在解析块映射时没有找到预期的键

如何在YAML中合并数组?

yaml list data-structures

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

使用新格式字符串记录变量数据

我使用python 2.7.3的日志工具.这个Python版本的文档说:

日志包提前更新格式化选项,如str.format()和string.Template.支持这些较新的格式化选项...

我喜欢花括号的"新"格式.所以我想尝试做类似的事情:

 log = logging.getLogger("some.logger")
 log.debug("format this message {0}", 1)
Run Code Online (Sandbox Code Playgroud)

并得到错误:

TypeError:并非在字符串格式化期间转换所有参数

我想念的是什么?

PS我不想用

log.debug("format this message {0}".format(1))
Run Code Online (Sandbox Code Playgroud)

因为在这种情况下,无论记录器级别如何,都始终格式化消息.

python string-formatting python-2.7

76
推荐指数
5
解决办法
4万
查看次数

将YAML与变量一起使用

YAML文件中的变量是否可能?例如:

theme:
  name: default
  css_path: compiled/themes/$theme.name
  layout_path: themes/$theme.name
Run Code Online (Sandbox Code Playgroud)

在这个例子中,如何theme: name: default在其他设置中使用?语法是什么?

ruby variables yaml ruby-on-rails string-interpolation

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

如何在yaml中创建关联数组列表

我试图在yaml中存储一些配置变量,表示为关联数组,也就是字典.我是这样做的:

content_prices:                                                                                                                                                                                                                               
  - {country: AU, price: 6990000}                                                                                                                                                                                                             
  - {country: AT, price: 4990000}                                                                                                                                                                                                             
  - {country: BE, price: 4990000}  
Run Code Online (Sandbox Code Playgroud)

当我尝试从我的ROR init文件解析它时会产生异常:

undefined方法`symbolize_keys!' 为零:NilClass

以下是我如何创建它:

Config = YAML.load_file("#{Rails.root}/config/prices.yml")[Rails.env].symbolize_keys!
Run Code Online (Sandbox Code Playgroud)

我猜我的yaml语法错了,那怎么写得好呢?

dictionary yaml associative-array ruby-on-rails

74
推荐指数
2
解决办法
4万
查看次数

PHP - 从以某个字符串开头的数组中获取所有键

我有一个看起来像这样的数组:

array(
  'abc' => 0,
  'foo-bcd' => 1,
  'foo-def' => 1,
  'foo-xyz' => 0,
  // ...
)
Run Code Online (Sandbox Code Playgroud)

我怎样才能得到开头的元素foo-

php arrays array-filter

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

PHP是否具有Python的列表推导语法?

Python具有语法上的甜蜜列表理解:

S = [x**2 for x in range(10)]
print S;
[0, 1, 4, 9, 16, 25, 36, 49, 64, 81]
Run Code Online (Sandbox Code Playgroud)

在PHP中我需要做一些循环:

$output = array();
$Nums = range(0,9);

foreach ($Nums as $num) 
{
    $out[] = $num*=$num;
}
print_r($out);
Run Code Online (Sandbox Code Playgroud)

要得到:

数组([0] => 0 [1] => 1 [2] => 4 [3] => 9 [4] => 16 [5] => 25 [6] => 36 [7] => 49 [8] => 64 [9] => 81)

反正有没有在PHP中获得类似的列表理解语法?无论如何使用PHP 5.3中的任何新功能吗?

谢谢!

php arrays language-comparisons list-comprehension higher-order-functions

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

什么是投影和选择?

投影和选择有什么区别?是吗:

  • 投影 - >用于选择表格的列; 和
  • 选择--->选择表格的行?

那么投影和选择分别是垂直和水平切片?

sql database relational-algebra

71
推荐指数
4
解决办法
10万
查看次数

在Python中获取索引的默认值超出范围

a=['123','2',4]
b=a[4] or 'sss'
print b
Run Code Online (Sandbox Code Playgroud)

我想在列表索引超出范围时获取默认值(此处为:) 'sss'.

我怎样才能做到这一点?

python syntax list default-value

71
推荐指数
8
解决办法
7万
查看次数