小编Pat*_*ick的帖子

Python的str.format()方法的默认kwarg值

我希望尝试尽可能简单地保持现有字符串的多元化,并且想知道str.format()在寻找kwargs时是否有可能解释默认值.这是一个例子:

string = "{number_of_sheep} sheep {has} run away"
dict_compiled_somewhere_else = {'number_of_sheep' : 4, 'has' : 'have'}

string.format(**dict_compiled_somewhere_else)
# gives "4 sheep have run away"

other_dict = {'number_of_sheep' : 1}
string.format(**other_dict)
# gives a key error: u'has'
# What I'd like is for format to somehow default to the key, or perhaps have some way of defining the 'default' value for the 'has' key 
# I'd have liked: "1 sheep has run away"
Run Code Online (Sandbox Code Playgroud)

干杯

python string string-formatting default-value

13
推荐指数
1
解决办法
1万
查看次数

在xib中嵌套基于NSTableViews的视图

我正在尝试在我的xib中将一个NSTableView嵌套在另一个基于视图的tableview中.当我这样做时,我得到以下构建错误(当尝试编译xib时):

An instance of NSTableColumn with object ID jRp-dg-jOe did not archive its child (NSTableCellView) with an object of ID y8a-qz-ChK

有没有人看过这个,或者知道如何修复它?

我假设我可以为NSTableCellView创建另一个xib,并使用它将其连接到父NSTableView

NSNib *cellNib = [[NSNib alloc] initWithNibNamed:@"MyCellContainingAnNSTableView" bundle:nil]; [parentTable registerNib:cellNib forIdentifier:@"SomeIdentifier"];

但那有点烦人......

macos cocoa objective-c nstableview

3
推荐指数
1
解决办法
900
查看次数

plpgsql - 在declare语句中使用动态表名

我正在尝试编写plpgsql以下形式的函数(注意这是一个简化版本):

CREATE FUNCTION check_valid(tablename regclass) RETURNS boolean AS $$

DECLARE valid_row tablename%ROWTYPE;

BEGIN

EXECUTE format('SELECT * FROM %s', tablename) into valid_row;

IF valid_row IS NULL THEN
      RETURN QUERY SELECT false;

ELSIF valid_row.is_valid = false;
      RETURN QUERY SELECT false;

ELSIF valid_row.hit_count > valid_row.hit_limit;
      RETURN QUERY SELECT false;

ELSE
      RETURN QUERY SELECT true;

END IF;

END

$$ LANGUAGE plpgsql;
Run Code Online (Sandbox Code Playgroud)

失败的部分是DECLARE线.如何根据变量表名声明类型?或许我需要以某种方式施展它?

类似的DECLARE mytable%ROWTYPE;工作正常,但如果我使用变量名称,如tablename%ROWTYPE:

ERROR: relation "tablename" does not exist

sql postgresql plpgsql

2
推荐指数
1
解决办法
1749
查看次数