执行以下代码,cursor.execute(sql_cmd,param)为什么会报错啊?

def select2(sql_cmd,param):
    """
    :param sql_cmd sql 命令
    :param param 参数

    """
    config = {
        'host':'x.x.x.x',
        'port':'x',
        'user':'x',
        'password':'x',
        'db':'x'
    }
    try:
        conn = mysql.connector.connect(**config)
    except mysql.connector.Error as e:
        print('connect fails!{}'.format(e))

    cursor = conn.cursor()
    try:
        cursor.execute(sql_cmd,param)
    except mysql.connector.Error as e:
        print('connect fails!{}'.format(e))
    finally:
        cursor.close()
        conn.close()

if name == '__main__':
sql_cmd = "SELECT NAME FROM user_info WHERE account = '%s'"
param = ('x')
select2(sql_cmd=sql_cmd, param=param)

param = 'x'

param = ('x',)或param = ['x']