2016-11-14 186 views
0

我正在使用table.scan方法中的row_prefix来过滤行。问题是函数在使用字符串文字时工作。但是,如果使用变量,则不会返回任何数据。happybase table.scan中的row_prefix不能与str变量一起工作

例如,下面的代码工作

connection = happybase.Connection(connect string) 
table = connection.table('table') 
table = table.scan(row_prefix='abc001', include_timestamp=False) 

但是,下面的代码不会返回任何数据

connection = happybase.Connection(connect string) 
table = connection.table('table') 

query = '\'{0}{1}\''.format(args['str1'], args['str2']) 
table = table.scan(row_prefix=query, include_timestamp=False) 

有一个在第二种情况中没有错误。

+1

尝试通过扫描前打印“查询”的价值。你是否获得与第一个查询相同的值? –

+0

是的,查询字符串是正确的。事实上,我把生成的字符串并在扫描方法中复制它,它工作 – Raj

回答

0

查询值与'{0}{1}'取代'\'{0}{1}\'',然后再试一次

+0

它在建议的格式更改后工作。谢谢! – Raj