客户问我是否可以在他的python应用程序周围建立一个系统。 问题是mysql表的名称是变量,例如在PHP中我会这样做:
<?php
$type = "facebook";
mysql_query("SELECT uid FROM users_".$type." WHERE username='foo'");
?>
现在我正在尝试在python中实现相同的功能,我有这段代码:
self.exeute(
"""
SELECT uid FROM `users_FACEBOOK` WHERE `username` = 'foo'
"""
)
如何用变量替换“FACEBOOK”? (必须使用getattr函数获取它。 我试过了
users_%(getattr(settings, 'TYPE'))
'users_'+str(getattr(settings, 'TYPE'))
两者都有错误..
答案 0 :(得分:1)
FACEBOOK = <get the value>
self.execute('select uid from `users_%s` where `username`="foo"' %(FACEBOOK))
答案 1 :(得分:0)
假设你有:
TYPE = 'FACEBOOK'
这将为您提供变量名称的字符串:
varName = 'user_' + TYPE
这是变量中的值:
locals()[varName]
看看当地人的帮助。
当地人(...) locals() - &gt;字典
更新并返回包含当前范围的局部变量的字典。