python – OperationalError: near “)”: syntax error

Olá estou tentando inserir múltiplos valores em um banco de dados. Porém, incorreu neste erro : OperationalError: near “)”: syntax error. Já tentei de diversas coisas como f-strings, %s e mudar as aspas. Tentei ainda usar gerenciador de contexto, mas o erro é de sintaxe. Como posso corrigir?

import sqlite3
conn = sqlite3.connect('dados.db')
cursor = conn.cursor()
cursor.execute("""CREATE TABLE profissoes (
id INTEGER PRIMARY KEY AUTOINCREMENT,
cargo VARCHAR(60) NOT NULL)""")

cursor.execute("""CREATE TABLE clientes (
id INTEGER PRIMARY KEY AUTOINCREMENT,
nome VARCHAR(60) NOT NULL,
data_nascimento VARCHAR(10) NOT NULL,
telefone VARCHAR(10) NOT NULL,
id_profissao INTEGER NOT NULL,
FOREIGN KEY(id_profissao) REFERENCES profissoes(id)
) """)
conn.commit()

dados = (('Programador'), ('Analista de Sistemas'), ('Suporte'), ('Gerente'))
for valor in dados:
    sql = """INSERT INTO profissoes(cargo) VALUES (?,)"""
    cursor.execute(sql, valor)
    
conn.close()

Consulta com gerenciador de contexto:

from contextlib import closing
with sqlite3.connect('dados.db') as conn:
    with closing(conn.cursor()) as cursor:
        dados = (('Programador'), ('Analista de Sistemas'), ('Suporte'), ('Gerente'))
        cursor.executemany("""INSERT INTO profissoes (cargo) VALUES(?,)""", dados)