Criando uma lista de números em sequência:
# python 2: lista = range(100) # python 3: lista = list(range(100))
Criando uma lista com list comprehensions:
lista = [x*2 for x in range(100)]
Percorrendo uma lista com for in
:
for x in lista: # faça algo com x
Percorrendo uma lista, obtendo os valores e seus índices:
for indice, valor in enumerate(lista): print "lista[%d] = %d" % (indice, valor)
Percorrendo um pedaço de uma lista usando slicing:
for x in lista[40:60]: # faça algo com x
Percorrendo uma lista de trás pra frente definindo o passo do slicing como -1
:
for x in lista[::-1]: # faça algo com x
Ou:
for x in reversed(lista): # faça algo com x
Percorrendo uma lista ordenada:
for x in sorted(lista): # faça algo com x
Acessando o último elemento de uma lista com o índice -1
:
print lista[-1]
Copiando uma referência para uma lista:
>>> nova_ref = lista >>> nova_ref is lista True
Copiando de verdade uma lista:
>>> nova_lista = lista[:] >>> nova_lista is lista False
Ou, usando o módulo copy
:
>>> import copy >>> nova_lista = copy.copy(lista) >>> nova_lista is lista False
Ou caso lista
contivesse listas aninhadas e quiséssemos fazer com que estas também fossem completamente copiadas, e não somente referenciadas, usaríamos a função deepcopy()
:
>>> nova_lista = copy.deepcopy(lista) >>> nova_lista is lista False
Embaralhando os elementos de uma lista (in-place):
>>> import random >>> random.shuffle(lista) # altera a própria lista
Obtendo uma amostra aleatória (de 10 elementos) de uma lista:
>>> print random.sample(lista, 10) [729, 9025, 2401, 8100, 5776, 784, 1444, 484, 6241, 7396]
Obtendo um elemento aleatório de uma lista:
>>> random.choice(lista) 7744
Gerando uma lista com 10 números aleatórios, com valores entre 0 e 99:
>>> lista_aleatoria = random.sample(range(0, 100), 10)
Obtendo o maior elemento de uma lista:
>>> lista = range(0, 10) >>> print max(lista) 9
O menor:
>>> print min(lista) 0
Pegando somente os elementos de índice par:
>>> print lista[::2] [0, 2, 4, 6, 8]
Os de índice ímpar:
>>> print lista[1::2] [1, 3, 5, 7, 9]
Somando todos os elementos de uma lista:
>>> print sum([1, 2, 3, 4]) 10
Juntando duas listas, formando pares de elementos:
>>> lista = zip(range(0, 5), range(5, 10)) >>> print lista [(0, 5), (1, 6), (2, 7), (3, 8), (4, 9)]
Separando os elementos de uma lista de forma intercalada:
>>> lista = range(0, 10) >>> intercaladas = lista[::2], lista[1::2] >>> print intercaladas ([0, 2, 4, 6, 8], [1, 3, 5, 7, 9])
Transformando uma lista de strings em uma string CSV:
>>> lista = ["ola", "mundo", "aqui", "estamos"] >>> csv_values = ','.join(lista) >>> print csv_values ola,mundo,aqui,estamos
Aplicando uma função (neste caso, anônima) a todos elementos de uma lista:
>>> lista = range(1, 11) >>> print map(lambda x: x*-1, lista) [-1, -2, -3, -4, -5, -6, -7, -8, -9, -10]
Filtrando os elementos de uma lista de acordo com um critério:
>>> def criterio(x): return x >= 0 >>> print range(-5, 5) [-5, -4, -3, -2, -1, 0, 1, 2, 3, 4] >>> print filter(criterio, range(-5, 5)) [0, 1, 2, 3, 4]
Retirando os elementos cujo valor é zero (ou melhor, cujo valor é avaliado como False
):
>>> print filter(None, range(-2, 2)) [-2, -1, 1]
E você, tem alguma dica que poderia ser inserida aqui no post? Poste sua sugestão nos comentários.
Uma coisa legal seria você ensinar a trabalhar com a lib python
Olá Arthur, a qual lib você se refere?
Abraço!
Desculpe digitei errado,estava me referindo a lib urllib2 mais vejo que entrei no post errado…
Eu tenho uma duvida como eu poderia printar todos os valores de uma lista como sé ele fosse uma string norma,simplificando como sé concatenar os valores da lista em uma sp string.
Agradeço a Atenção e você ganhou mais um leitor ao seu blog.
Artur. Você pode usar o método join da classe string:
print ‘,’.join(lista)
Obg,consegui o que queria !
como fazer para passar um valor a uma lista aninhada exemplo:
MATRIZ=[(0,0,0),(0,0,0),(0,0,0)]
MATRIZ[1][1]=1
nesta lista quero alterar o valor em uma posição da matriz. Como posso fazer? Pois dessa forma esta gerando o seguinte erro:
TypeError: ‘tuple’ object does not support item assignment
Na estrutura referida, você não tem listas aninhadas dentro de outra lista, mas sim tuplas dentro de uma lista. O problema é que tuplas são objetos imutáveis.
As tuplas literais são especificadas por conjuntos de valores separados por vírgulas e delimitados por parênteses. Já as listas são delimitadas por colchetes.
Com listas aninhadas, seu código fica assim:
MATRIZ=[[0,0,0], [0,0,0], [0,0,0]]
MATRIZ[1][1] = 1
Veja se isso resolve:
i = 0
print “****************************************************”
while i < len(host_id):
j = 0
while j < len(host_id[i]['hosts']):
print "Group ID: ", host_id[i]['groupid']
print "Group Name: ", host_id[i]['name']
print "Hosts: ", host_id[i]['hosts'][j]['hostid']
print "****************************************************"
j = j + 1
i = i + 1
Muito bom, cara. Eu precisei de ordenar uma lista e consegui graças a você.
Também tem um site pra quem precisar ordenar strings ou convertê-las para diversos formatos, principalmente em ASCII para HEX:
http://python3-dicas.blogspot.com/2015/04/invertendo-strings.html
Olá pessoal estou começando com Python e estou com um problema, não consigo fazer com que apareça o que o usuário digitou na tela. Na verdade aparece porém aparece tbm a variavel x do for.
nome = []
valor = []
for x in range(1 , 3):
prod=input(“Cadastre os nome do produto: \n”)
nome += [(x)],prod
prec=float(input(“Cadastre os valor do produto: \n”))
while prec < 0:
prec = float(input("Valor inválido!\nCadastre os valor do produto: \n"))
valor += [(x)],prec
valor += [(x)],prec
x = 0
while x <= 3:
print(nome[x])
print(valor[x])
x += 1
Achei o cara nome.append(prod)
Boa Tarde Valmir .
TUDO BEM ?
Gostei muito do seu conteúdo de python está de parabéns. Bom eu to com um probleminha em um sistema que estou desenvolvendo em python , já tentei de tudo mas não consigo resolver .
Seguinte: eu tenho um formulário de cadastro de funcionários , e um dos campos é uma combobox que se chama login , os valores dessa combo vem do banco de dados de uma tabela login que tem relação com a tabela funcionário.
bom resumindo eu estou fazendo isso como segue o código abaixo
BANCO =”tcc teste”
USER=”root”
PASSWD=””
HOST=”127.0.0.1″
conexao = MySQLdb.connect(db=BANCO,user=USER,passwd=PASSWD,host=HOST)
cursor = conexao.cursor()
sql = “select login from usuarios where tipo_usuario like ‘empregada’ ”
cursor.execute(sql)
dadosFuncionario = cursor.fetchall()
for dados in dadosFuncionario:
lista.append(dados)
#contator = len(lista)
#print len(lista)
Label(self.master,text=”Login:”).place(relx=0.5,x=-172,y=330,anchor=CENTER)
self.comboLogin = ttk.Combobox(self.master)
self.comboLogin[“values”] = lista
self.comboLogin.current(0)
self.comboLogin.place(relx=0.5,x=-100,y=330,anchor=CENTER,height=17,width=100)
assa é uma parte do código .
meu problema é o seguinte quando eu trago os dados para dentro da combo ele ficam da seguinte maneira
Exemplo: [‘marcos’,],
[‘alysson’,],
[‘juca’,],
os dados ficam desse jeito na combobox , eu estou tentando recomer as [], ” , , de maneira que fique apenas o nome do login na combobox sem esses caracteres .
Será que você poderia me dar uma sugestão ?
estou utilizando a biblioteca Tkinter
agradeço por sua atenção grande abraço.
Willian! Acredito que o problema é que o método
fetchall()
retorna uma lista de resultados, que por sua vez são listas também, mesmo que de um elemento só.Assim,
dadosFuncionario
é[['marcos'], ['alysson'], ['juca']]
. Então, quando você faz o seguinte, você adiciona listas de um elemento (o nome) à lista:A solução é extrair esse elemento de dentro da lista interna:
Ou, então, com list comprehensions:
Qualquer coisa, comente!
Valdir.
Boa Tarde Valdir .
agradeço por sua atenção .
eu tentei fazer o que você citou no comentário , porem aparece o seguinte erro na hora da execução .
there’s an error in your program
EOF while scanning triple-quoted string literal .
se você souber o que significa e pude me ajudar .
grande abraço
você poderia postar aqui o código todo?
segue o código
# coding: utf-8
import MySQLdb
from Tkinter import *
from maskedentry import MaskedWidget
import sys
import tkMessageBox
global dados
import ttk
#lista = [“willian”,”selma”,”jose”,”carlos”]
lista =[]
novofuncionario = True
class CadastroFuncionario():
def __init__(self,master):
self.master = master
self.master.title(“Cadastro de Funcionario”)
self.master.geometry(“900×600″)
Label(self.master,text=”Pesquisar:”).place(relx=0.5,x=-175,y=30,anchor=CENTER)
self.PesquisaFuncionario = Entry(self.master,)
self.PesquisaFuncionario.place(relx=0.5,x=-50,y=30,anchor=CENTER,height=17,width=200)
Label(self.master,text=”Código:”).place(relx=0.5,x=-175,y=60,anchor=CENTER)
self.CodigoFuncionario = Entry(self.master,state=”readonly”)
self.CodigoFuncionario.place(relx=0.5,x=-140,y=60,anchor=CENTER,height=17,width=30)
Label(self.master,text=”Nome:”).place(relx=0.5,x=-175,y=90,anchor=CENTER)
self.NomeFuncionario = Entry(self.master,)
self.NomeFuncionario.place(relx=0.5,x=-30,y=90,anchor=CENTER,height=17,width=250)
Label(self.master,text=”Endereco:”).place(relx=0.5,x=-183,y=120,anchor=CENTER)
self.EnderecoFuncionario = Entry(self.master)
self.EnderecoFuncionario.place(relx=0.5,x=-43,y=120,anchor=CENTER,height=17,width=220)
Label(self.master,text=”Bairro:”).place(relx=0.5,x=-175,y=150,anchor=CENTER)
self.BairroFuncionario = Entry(self.master)
self.BairroFuncionario.place(relx=0.5,x=-80,y=150,anchor=CENTER,height=17,width=150)
Label(self.master,text=”Cidade:”).place(relx=0.5,x=20,y=150,anchor=CENTER)
self.CidadeFuncionario = Entry(self.master)
self.CidadeFuncionario.place(relx=0.5,x=112,y=150,anchor=CENTER,height=17,width=140)
Label(self.master,text=”CEP:”).place(relx=0.5,x=43,y=180,anchor=CENTER)
self.cep = Entry(self.master)
#self.cep = MaskedWidget(self.master,’fixed’,mask=”99999 999″)
self.cep.place(relx=0.5,x=100,y=180,anchor=CENTER,height=17,width=100)
Label(self.master,text=”Estado:”).place(relx=0.5,x=-177,y=180,anchor=CENTER)
self.comboEstado = ttk.Combobox(self.master)
self.comboEstado[“values”] = ‘AC’,’AL’,’AP’,’AM’,’BA’,’CE’,’DF’,’ES’,’GO’,’MA’,’MT’,’MS’,’MG’,’PA’,’PB’,’PR’,’PE’,’PI’,’RJ’,’RN’,’RS’,’RO’,’RR’,’SC’,’SP’,’SE’,’TO’
self.comboEstado.current(0)
self.comboEstado.place(relx=0.5,x=-100,y=180,anchor=CENTER,height=17,width=100)
“””
self.var_estado = StringVar(self.master)
self.var_estado.set(‘AC’)
self.estado = OptionMenu(self.master,self.var_estado,’AC’,’AL’,’AP’,’AM’,’BA’,’CE’,’DF’,’ES’,’GO’,’MA’,’MT’,’MS’,’MG’,’PA’,’PB’,’PR’,’PE’,’PI’,’RJ’,’RN’,’RS’,’RO’,’RR’,’SC’,’SP’,’SE’,’TO’)
#self.EstadoFuncionario = Entry(self.master)
self.estado.config(width=15)
self.estado.place(relx=0.5,x=-100,y=150,anchor=CENTER,height=17,width=100)
#self.EstadoFuncionario.place(relx=0.5,x=-65,y=120,anchor=CENTER,height=17,width=180)
“””
Label(self.master,text=”Salario:”).place(relx=0.5,x=-177,y=210,anchor=CENTER)
self.salario = Entry(self.master)
self.salario.place(relx=0.5,x=-96,y=210,anchor=CENTER,height=17,width=120)
Label(self.master,text=”Telefone Residencial:”).place(relx=0.5,x=-142,y=240,anchor=CENTER)
self.TelefoneResidencial = Entry(self.master)
#self.TelefoneResidencial = MaskedWidget(self.master,’fixed’,mask=”99 99999 9999″)
self.TelefoneResidencial.place(relx=0.5,x=-35,y=240,anchor=CENTER,height=17,width=100)
Label(self.master,text=”Telefone Celular:”).place(relx=0.5,x=-152,y=270,anchor=CENTER)
self.TelefoneCelular = Entry(self.master)
#self.TelefoneCelular = MaskedWidget(self.master,’fixed’,mask=”99 99999 9999″)
self.TelefoneCelular.place(relx=0.5,x=-40,y=270,anchor=CENTER,height=17,width=100)
Label(self.master,text=”Email:”).place(relx=0.5,x=-172,y=300,anchor=CENTER)
self.EmailFuncionario = Entry(self.master)
self.EmailFuncionario.place(relx=0.5,x=-43,y=300,anchor=CENTER,height=17,width=220)
BANCO =”tcc teste”
USER=”root”
PASSWD=””
HOST=”127.0.0.1″
conexao = MySQLdb.connect(db=BANCO,user=USER,passwd=PASSWD,host=HOST)
cursor = conexao.cursor()
sql = “select login from usuarios where tipo_usuario like ‘empregada’ ”
cursor.execute(sql)
dadosFuncionario = cursor.fetchall()
for dados in dadosFuncionario:
lista.append(dados)
#contator = len(lista)
#print len(lista)
Label(self.master,text=”Login:”).place(relx=0.5,x=-172,y=330,anchor=CENTER)
self.comboLogin = ttk.Combobox(self.master)
self.comboLogin[“values”] = lista
self.comboLogin.current(0)
self.comboLogin.place(relx=0.5,x=-100,y=330,anchor=CENTER,height=17,width=100)
“””
self.var_us = StringVar(self.master)
self.var_us.set(”)
self.nivelus = OptionMenu(self.master, ‘teste’,’teste’)
self.nivelus.config(width=15)
self.nivelus.place(relx=0.5,x=-100,y=300,anchor=CENTER,height=17,width=100)
“””
self.FuncionarioNovo = Button(self.master,width=10, text=”Novo”,command=self.novo)
self.FuncionarioNovo.place(relx=0.5,x=-150,y=370,anchor=CENTER,height=25,width=90)
#self.BotaoPesquisa = Button(self.master,width=10, text=”Pesquisar”)
#self.BotaoPesquisa.grid(row=1,column=3)
self.GravarFuncionario = Button(self.master,width=10, text=”Gravar”,command=self.CadastroFuncionario)
self.GravarFuncionario.place(relx=0.5,x=-60,y=370,anchor=CENTER,height=25,width=90)
self.FuncionarioAlterar = Button(self.master,width=10, text=”Alterar”, command=self.alterar)
self.FuncionarioAlterar.place(relx=0.5,x=30,y=370,anchor=CENTER,height=25,width=90)
self.FuncionarioExcluir = Button(self.master,width=10, text=”Excluir”, command=self.excluir)
self.FuncionarioExcluir.place(relx=0.5,x=120,y=370,anchor=CENTER,height=25,width=90)
self.FuncionarioCancelar = Button(self.master,width=10, text=”Cancelar”,command=self.cancelar)
self.FuncionarioCancelar.place(relx=0.5,x=210,y=370,anchor=CENTER,height=25,width=90)
self.PesquisarFuncionario = Button(self.master,width=10, text=”Pesquisar”, command=self.pesquisar)
self.PesquisarFuncionario.place(relx=0.5,x=100,y=30,anchor=CENTER,height=25,width=90)
def habilitarcampos(self):
self.NomeFuncionario.configure(state=”normal”)
self.EnderecoFuncionario.configure(state=”normal”)
self.BairroFuncionario.configure(state=”normal”)
self.CidadeFuncionario.configure(state=”normal”)
self.cep.configure(state=”normal”)
self.salario.configure(state=”normal”)
self.TelefoneResidencial.configure(state=”normal”)
self.TelefoneCelular.configure(state=”normal”)
self.EmailFuncionario.configure(state=”normal”)
def limpacampos(self):
#editcodigo.configure(state=”normal”) # Habilita o campo codigo se precisa
self.CodigoFuncionario.configure(state=”normal”)
self.CodigoFuncionario.delete(0,END)
self.NomeFuncionario.delete(0,END)
self.EnderecoFuncionario.delete(0,END)
self.BairroFuncionario.delete(0,END)
self.CidadeFuncionario.delete(0,END)
self.cep.delete(0,END)
self.salario.delete(0,END)
self.TelefoneResidencial.delete(0,END)
self.TelefoneCelular.delete(0,END)
self.EmailFuncionario.delete(0,END)
self.NomeFuncionario.focus()
def novo(self):
self.habilitarcampos()
self.limpacampos()
self.CodigoFuncionario.configure(state=”readonly”)
self.FuncionarioExcluir.configure(state=”disabled”)
self.FuncionarioAlterar.configure(state=”disabled”)
self.FuncionarioCancelar.configure(state=”normal”)
self.GravarFuncionario.configure(state=”normal”)
self.comboLogin.configure(state=”normal”)
self.comboEstado.configure(state=”normal”)
#self.StatusResposta[‘text’]=” ”
#self.StatusResposta[‘text’]=”Inserindo Novo Registro”
def desabilitarcampos(self):
#editcodigo.configure(state=”readonly”)
self.CodigoFuncionario.configure(state=”readonly”)
self.NomeFuncionario.configure(state=”readonly”)
self.EnderecoFuncionario.configure(state=”readonly”)
self.BairroFuncionario.configure(state=”readonly”)
self.CidadeFuncionario.configure(state=”readonly”)
self.cep.configure(state=”readonly”)
self.salario.configure(state=”readonly”)
self.TelefoneResidencial.configure(state=”readonly”)
self.TelefoneCelular.configure(state=”readonly”)
self.EmailFuncionario.configure(state=”readonly”)
self.comboEstado.configure(state=”disabled”)
self.comboLogin.configure(state=”disabled”)
def cancelar(self):
self.desabilitarcampos()
self.FuncionarioExcluir.configure(state=”disabled”)
self.FuncionarioAlterar.configure(state=”disabled”)
self.FuncionarioNovo.configure(state=”normal”)
self.GravarFuncionario.configure(state=”disabled”)
self.FuncionarioCancelar.configure(state=”disabled”)
def CadastroFuncionario(self):
conexao = self.ConexaoBanco()
codigo=self.CodigoFuncionario.get()
nome=self.NomeFuncionario.get()
endereco=self.EnderecoFuncionario.get()
bairro=self.BairroFuncionario.get()
cidade=self.CidadeFuncionario.get()
cep=self.cep.get()
estado=self.comboEstado.get()
salario=self.salario.get()
telefonecasa=self.TelefoneResidencial.get()
celular=self.TelefoneCelular.get()
email=self.EmailFuncionario.get()
login=self.comboLogin.get()
cursor = conexao.cursor()
“””
cursor = conexao.cursor()
sql = “select * from funcionarios where nome like ‘”+nome+”‘”
cursor.execute(sql)
valido = cursor.fetchall()
if len(valido)>0:
tkMessageBox.showinfo(“Alerta”, “Empregado já cadastrado”)
“””
if self.NomeFuncionario.get() == “”:
tkMessageBox.showinfo(“Alerta”, “Preencha o Campo nome”)
elif self.EnderecoFuncionario.get() == “”:
tkMessageBox.showinfo(“Alerta”, “Preencha o Campo Endereco”)
elif self.BairroFuncionario.get() == “”:
tkMessageBox.showinfo(“Alerta”, “Preencha o Campo Bairro”)
elif self.CidadeFuncionario.get() == “”:
tkMessageBox.showinfo(“Alerta”, “Preencha o Campo Cidade”)
elif self.cep.get() == “”:
tkMessageBox.showinfo(“Alerta”, “Preencha o Campo CEP”)
elif self.salario.get() == “”:
tkMessageBox.showinfo(“Alerta”, “Preencha o Campo Salario”)
elif self.TelefoneResidencial.get()== “” and self.TelefoneCelular.get() == “”:
tkMessageBox.showinfo(“Alerta”, “É necessário fornecer pelo menos 1 número de telefone”)
elif novofuncionario:
sql = “insert into funcionarios (nome,endereco,cep,salario,email,estado,cidade,bairro,telefone_residencial,telefone_celular,login_usuario) values (‘”+nome+”‘,'”+endereco+”‘,'”+cep+”‘,'”+salario+”‘,'”+email+”‘,'”+estado+”‘,'”+cidade+”‘,'”+bairro+”‘,'”+telefonecasa+”‘,'”+celular+”‘,'”+login+”‘)”
else:
sql = “update funcionarios set nome = ‘”+self.NomeFuncionario.get()+”‘,endereco = ‘”+self.EnderecoFuncionario.get()+”‘,cep = ‘”+self.cep.get()+”‘,salario = ‘”+self.salario.get()+”‘,email = ‘”+self.EmailFuncionario.get()+”‘,cidade = ‘”+self.CidadeFuncionario.get()+”‘,bairro = ‘”+self.BairroFuncionario.get()+”‘,telefone_residencial = ‘”+self.TelefoneResidencial.get()+”‘,telefone_celular = ‘”+self.TelefoneCelular.get()+”‘ where id_funcionario = “+codigo
try:
cursor.execute(sql)
conexao.commit()
tkMessageBox.showinfo(“Alerta”, nome + “Cadastrodo Com sucesso”)
except MySQLdb as erro:
print(“Não COnsegui gravar os arquivos no banco de dados”, erro)
self.FuncionarioExcluir.configure(state=”normal”)
self.FuncionarioAlterar.configure(state=”normal”)
self.FuncionarioNovo.configure(state=”normal”)
self.GravarFuncionario.configure(state=”disabled”)
self.FuncionarioCancelar.configure(state=”disabled”)
self.desabilitarcampos()
conexao.close()
def alterar(self):
self.habilitarcampos()
self.FuncionarioExcluir.configure(state=”disabled”)
self.FuncionarioAlterar.configure(state=”disabled”)
self.FuncionarioNovo.configure(state=”disabled”)
self.GravarFuncionario.configure(state=”normal”)
self.FuncionarioCancelar.configure(state=”normal”)
self.comboEstado.configure(state=”disabled”)
global novofuncionario
novofuncionario = False
def pesquisar(self):
self.FuncionarioExcluir.configure(state=”normal”)
self.FuncionarioAlterar.configure(state=”normal”)
conexao = self.ConexaoBanco()
cursor = conexao.cursor()
if self.PesquisaFuncionario.get() == “”:
tkMessageBox.showinfo(“Alerta”, “Digite um Funcionario a ser pesquisado”)
sql = “select * from funcionarios where nome like ‘”+self.PesquisaFuncionario.get()+”%'”
try:
cursor.execute(sql)
dadosFuncionario = cursor.fetchone()
self.limpacampos()
if dadosFuncionario:
#print(dadosPessoa[0])
self.CodigoFuncionario.insert(0,dadosFuncionario[0])
self.CodigoFuncionario.configure(state=”readonly”)
#self.comboLogin.configure(state=”disabled”)
self.comboEstado.configure(state=”disabled”)
self.NomeFuncionario.insert(0,dadosFuncionario[1])
self.EnderecoFuncionario.insert(0,dadosFuncionario[2])
self.cep.insert(0,dadosFuncionario[3])
self.salario.insert(0,dadosFuncionario[4])
self.EmailFuncionario.insert(0,dadosFuncionario[5])
#self.comboEstado.insert(0,dadosFuncionario[5])
self.CidadeFuncionario.insert(0,dadosFuncionario[7])
self.BairroFuncionario.insert(0,dadosFuncionario[8])
self.TelefoneResidencial.insert(0,dadosFuncionario[9])
self.TelefoneCelular.insert(0,dadosFuncionario[10])
self.comboLogin.insert(0,dadosFuncionario[11])
else:
tkMessageBox.showinfo(“Alerta”, “Funcionario Não cadastrado”)
except MySQLdb as erro:
print(“Não conseguiu listar “,erro)
conexao.close()
def excluir(self):
conexao = self.ConexaoBanco()
#codigo= int (raw_input(“Codigo”))
ExcluirFuncionario = self.PesquisaFuncionario.get()
codigofuncionario = self.CodigoFuncionario.get()
cursor = conexao.cursor()
sql = “delete from funcionarios where id_funcionario = “+codigofuncionario
try:
cursor.execute(sql)
conexao.commit()
tkMessageBox.showinfo(“Alerta”, “Dados Excluidos Com sucesso”)
#print(“Dados Excluidos com sucesso”)
except MySQLdb as erro:
tkMessageBox.showerro(“Alerta”, “Não Foi Possivel Excluir os Dados”)
#print(“Não COnsegui Excluir os arquivos no banco de dados”, erro)
self.limpacampos()
conexao.close()
def ConexaoBanco(self):
BANCO =”tcc teste”
USER=”root”
PASSWD=””
HOST=”127.0.0.1″
try:
conexao = MySQLdb.connect(db=BANCO,user=USER,passwd=PASSWD,host=HOST)
except:
print(“Conexão com o banco de dados falhou”)
return conexao
def pesquisarLogin(self):
conexao = self.ConexaoBanco()
cursor = conexao.cursor()
sql = “select login from usuarios ”
#if self.EditUsuario.get() == “”:
# tkMessageBox.showinfo(“Alerta”, “Digite um Usuario A ser Pesquisado”)
try:
cursor.execute(sql)
dadosFuncionario = cursor.fetchall()
for dados in dadosFuncionario:
self.listalogin[“values”] = dados
except MySQLdb as erro:
print(“Não Consegui Listar:”,erro)
conexao.close()
print self.listalogin
def TelaCadastroFuncionario():
root=Tk()
CadastroFuncionario(root)
root.mainloop()
o wordpress bagunçou a formatação e as aspas e acho que o problema está justamente em algum par de aspas… sugiro que você use o cole o seu código no http://pastebin.com e cole aqui a URL para que eu possa ver o código direitinho.
de qualquer modo, observe bem as aspas.
segue o link http://pastebin.com/iQ1hv8PT
Pela mensagem de erro que você está obtendo, o problema está em alguma das strings multi-linhas que você tem no seu código (pelo que vi, você fez isso para ‘comentar’ o código).
Experimente tirá-las do código.
Agora Funcionou 🙂 , realmente era o que você falou Valdir , ele estava reclamando das aspas do comentário , depois de retirar funcionou certinho , agora quando eu carrego os dados na combo não aparece mais aquele lixo .
Muito obrigado pela ajuda , você não sabe o quanto me ajudou .
Grande Abraço
Que bom que funcionou! Só tome cuidado para não se confundir, pois aspas triplas não delimitam comentários, mas sim strings de múltiplas linhas. O efeito, entretanto, é **parecido**, pois aquele trecho de código não será executado pelo interpretador, embora seja criado um objeto string com aquele conteúdo em memória. Assim, é preferível comentar com # na frente de cada linha.
realmente eu não sabia disso , agora irei comentar sempre utilizando # .
Desculpa o incomodo aproveitando o assunto , agora eu tente fazer o mesmo processo , porem trazendo dados do tipo int do banco de dados .
e eles apareceram da seguinte maneira dentro da combo box
Exemplo:
[,1L
,2L]
[,4L
,7L]
ola caro amigo,estou começando no py….primeiramente queria fazer algo assim
forneço algum caractrs ex:ABC ele cria “CBA,ACB,ABC,BCC,CCA…..ASSIM VAI INDO ATE TERMINAR”
se voce puder me fornecer o codigo muito obrigado pois ta difficil fazer aqui 🙂
boa tarde, há alguma maneira de fazer com que sempre que se percorre uma certa lista até ao fim ela voltar automaticamente ao inicio?
Sim filipe26, existem várias maneiras. Talvez se você explicar melhor sua necessidade, possamos lhe indicar o melhor método.
Boa noite! ^^
Eu tenho uma dúvida.. Eu crio duas listas, e então somo as duas listas, criando uma terceira com os itens das duas anteriores.. Se as listas anteriores possuírem itens iguais, como faço para que esse item não se repita na terceira? Por exemplo:
a = [1, 2, 3, 10]
b = [5, 4, 3, 9]
c = a + b
c = [1, 2, 3, 10, 5, 4, 3, 9]
Como eu faço para que o 3 não se repita?
Se você não se importa de perder a ordem da lista, basta convertê-la em um conjunto, removendo assim as duplicatas:
>>> c = set(a + b)
ou ainda:
>>> set(a).union(b)
Muito obrigado! ^^ Mas esqueci de um detalhe: não posso utilizar a função set pois ainda não vi este termo nas aulas, provavelmente é assunto lá pra frente. Além disso, esse exercício faz parte do assunto de Laços (while), e provavelmente preciso utalizar laços para resolver. Basicamente, o programa deve receber um número n, e imprimir a soma de todos os números menores que n que sejam múltiplos de 3 e de 5. Só que 3 e 5 possuem alguns múltiplos em comum, e a soma não deve contá-los mais de uma vez ^^ Estou tentando sem utilizar laços, mas se puderem ajudar utilizando laços, seria interessante ^^
Bom dia, Guilherme.
Veja como eu faria:
a = [1, 2, 3, 10]
b = [5, 4, 3, 9]
c = a + b
list.sort(c) #AQUI ORDENO A LISTA
print(c)
for i in range(len(c)):
if i>>
[1, 2, 3, 3, 4, 5, 9, 10]
3
[1, 2, 3, 4, 5, 9, 10]
>>>
Bom dia, como intercalar duas listas em uma terceira ?
ex:
lista 01 : [1,2,3,4]
lista 02: [5,6,7,8]
lista 03: [1,5,2,6,3,7,4,8]
Muito simples, jovem:
>>> a = [1,2,3,4]
>>> b = [5,6,7,8]
>>> c=a+b
>>> c
[1, 2, 3, 4, 5, 6, 7, 8]
Depois dá uma olhada:
http://python3-dicas.blogspot.com.br/2015/04/manipulando-listas.html
Como criar DIRETAMENTE um array a partir de outro – sabendo os índices que devem ser selecionados? Por exemplo: criar um novo array a partir dos elementos de indíce 0 e 2 do vetor x abaixo – esta sintaxe eu vi num site, mas não está funcionando:
x= [“a”, “b”, “c”, “d”]
interador = iter([0,2])
novo_x = x[interador]
Preciso que meu codigo mostre o conteúdo de cada matriz com tabulação que respeite a quantidade de caracteres do maior valor, sem vírgulas e sem colchetes. Cada matriz deve ser mostrada via chamadas independentes de um mesmo subprograma que receba como parâmetro apenas a matriz em questão. Poderia me ajudar??
import random
matriz1 = []
n = int(input(“Informe a quantidade de filas\n da matriz 1:” ))
m = int(input(“Informe a quantidade de colunas\n da matriz 1:” ))
for i in range(n):
matriz1.append([])
for j in range(m):
matriz1[i].append(random.randint(0,100))
for i in range(len(matriz1)):
print(matriz1[i])
matriz2 = []
n = int(input(“Informe a quantidade de filas\n da matriz 2:” ))
m = int(input(“Informe a quantidade de colunas\n da matriz 2:” ))
for i in range(n):
matriz2.append([])
for j in range(m):
matriz2[i].append(random.randint(0,100))
for i in range(len(matriz2)):
print(matriz2[i])
como faço para escrever uma função que receba uma lista dentro de outra lista de inteiros e some os elementos de todas as listas. Por exemplo:
>>> f = [[4, 5], [7], [9]
……
>>> 21
x=[[2],[4],[3,4]]
def d():
s=0
for n in x:
l=n
for l in n:
s+=l
print(s)
d()
Amigo, sei que o tópico é antigo, mas tenho uma dúvida… quero pedir ao usuário para dizer qual o tamanho da lista…e a partir do tamanho q ele inseriu, por exemplo 5, pedir que ele insira 5 números para preencher a lista. Como pedir para ele inserir e atribuir isso a uma variável eu consigo…o problema é como criar essa lista a partir do tamanho que ele inseriu…alguma sugestão?
que tal:
>>> num * [None]
Amigo, poderiam dar uma ajuda, eu preciso colocar uma matriz T de ordem 3×3 como elemento na diagonal principal de uma matriz de ordem [2], porem nao consigo fazer isso, poderiam ajudar? Agradeco
O que será exibido?
i=0
produto=1
entrada=100
while(i<=entrada):
produto=produto*i
i=i+1
print (produto)
Será exibido um erro.
A identação está toda errada.
Sugiro instalar o Python em sua máquina e começar a brincar. Você vai adorar!
Pessoal, boa tarde.
Gostaria de saber como subtrair uma lista de outra, mas sem usar slice. Exemplo:
lista1 = [“B”,”K”,”J”,”D”,”U”,”N”,”K”]
lista2 = [“U”,”N”,”K”]
e como resultado ter: listaFinal = [“B”,”K”,”J”,”D”]
Tentei converter para conjunto, mas altera a ordem dos elementos.
Obrigado.
Olá!
Gostaria que você me respondesse como eu posso usar o primeiro elemento de uma lista como índice de outra lista. Por exemplo:
verifica_sequencia = []
for i in range(linhas):
if fileReadSplitted[i].startswith(“E3”): #Aqui eu estou falando de linhas de um arquivo de texto
verifica_sequencia.append(i+1) #Quero que o número da linha que começa com E3 seja armazenado em uma lista e isso é
#feito com sucesso
if len(verifica_sequencia) == 1: #Só pode haver uma única linha que comece com E3
if fileReadSplitted(verifica_sequencia[0]) != 84:
print(“Blá, blá blá…”)
Onde verifica_sequencia[0] == 23, mas ainda assim dá o seguinte erro:
File “file.py”, line 235, in e3func
###########################
if fileReadSplitted(verifica_sequencia[0]) != 84:
TypeError: ‘list’ object is not callable
Como resolver isso?
Olá, alguém poderia me ajudar com esse problema?
1) Faça um programa que salve o nome e a média de cada aluno em uma lista. Deve ser possível cadastrar vários alunos e suas respectivas médias na lista.
Ao final do programa, crie outra repetição para localizar a media de alunos na lista, até que não deseje mais (crie outro while só para isso).
Obrigada!
Gostaria que alguém me tirasse essa dúvida.
Não consigo fazer esse programa!! É em Python
Leia dois n´umeros X e Y. Depois leia X n´umeros e coloque em uma lista e
fac¸a o mesmo com o Y. Ao final, intercale os elementos da lista X e da lista
Y numa terceira lista e a imprima na tela.
olá, gostaria de saber como montar uma lista a partir de inputs dados pelo usuário.
Você pode fazer um loop “for” adicionando os valores à lista com o “input” e o “append”.
Dá uma olhadinha no meu blog. Acho que vai te ajudar.
http://debaixodatampa.blogspot.com.br
como faço para salvar os dados de uma lista em um arquivo?
Poderia adicionar ao tópico um jeito de percorrer uma lista de n em n ítens, manipulando as sublistas formadas por esses itens. Por exemplo, lista = [a,b,c,d]. Percorra de dois em dois itens e obtenha a multiplicação entre eles. lista2 = [[a,b],[b,c],[c,d]] e a multiplicação de cada sublista é ab, bc, cd.
Ola, eu tenho uma lista listanumeros = [1, 1, 2, 3, 4, 4, 4, 5, 8, 9] e eu gostaria que me mostrasse o numero que aparace mais vezes na lista, como eu faço isso?
Como Faço para multiplicar todos os elementos de uma lista?
Muito bom!
Muito útil.
Obrigada :]
me ajudem a responder essa questão por favoooorr!!!
*Faça um programa que calcule e mostre a média das Notas 1 , entre todos os
estudantes.
alunos = [[“Nome”,”Idade”,”Bairro”,”Nota1″,”Nota2″],
[“ADRIANNE”,29,”Jurunas”,7,7],
[“BRENO”,20,”Jurunas”,8,6],
[“BRUNO”,24,”Jurunas”,8,6],
[“BRUNA”,23,”Umarizal”,5,5],
[“CAROLINE”,29,”Pratinha”,6,6],
[“ELIZABETH”,25,”Jurunas”,10,10],
[“ELIZ”,30,”Umarizal”,9,9],
[“GLAUBER”,20,”Pratinha”,6,5],
[“JULIO”,30,”Jurunas”,9,9],
[“KATIA”,26,”Umarizal”,7,9],
[“LEONARDO”,28,”Umarizal”,8,7],
[“LUCAS”,22,”Pratinha”,10,8],
[“MARCELO”,20,”Jurunas”,8,8],
[“MARCOS”,27,”Umarizal”,10,9],
[“MATHEUS”,20,”Jurunas”,9,8],
[“MAYKON”,24,”Umarizal”,7,10],
[“NILIANE”,22,”Jurunas”,6,5],
[“ROSIELLY”,24,”Umarizal”,7,7],
[“WENDEU”,19,”Pratinha”,8,5],
[“PEDRO”,26,”Pratinha”,8,6]]
Oi Ane.
Você pode resolver assim:
https://repl.it/repls/DraftyHummingRobot?lite=true
Alguém poderia me ajudar?? To começando com Python e to meio perdida ..
Faça um programa que percorre uma lista e exiba na tela o valor mais próximo da
média dos valores da lista.
Exemplo:
lista = [2.5, 7.5, 10.0, 4.0] (média = 6.0)
Valor mais próximo da média = 7.5
lista = [2.5, 7.5, 10.0, 4.0]
lista.sort()
soma = 0
for num in lista:
soma += num
media = soma/len(lista)
prox = lista[0]
for num in lista:
if (num – media)<(num-prox):
prox = num
print(prox)
Para ver o código funcionando:
https://repl.it/@EmersonLara/FittingGuiltyTask
muitíssimo obrigada 🙂
Me ajude nas outras duas abaixo por favor 😦
muito obg ajudou muito …..
Faça uma função que receba uma lista de números armazenados de forma crescente,
e dois valores (limite inferior e limite superior), e exiba a sublista cujos elementos são
maiores ou iguais ao limite inferior e menores ou iguais ao limite superior.
Exemplo: lista inicial=[12,14,15,16,18,20,24,26,28,32,34,38]
limite inferior=13
limite superior = 26
lista exibida: [14,15,16,18,20,24,26]
Duas amigas estabeleceram o código abaixo para que suas mensagens não fossem
lidas pelas demais pessoas.
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26
“ “ a b c d e f g h i j k l m n o p q r s t u v w x y z
Observe que cada letra equivale a um número entre 1 e 26 e o espaço ao 0. Faça a
função “traduzir”, que recebe uma lista com uma mensagem (lSecreta) e “traduz” a
sequência armazenada em lSecreta de acordo com o código das amigas.
Teste para lSecreta = [2,15,13,0,4,9,1];
Me ajudem nas questões acima por favor!!
como eu insiro uma frase e ela vira uma lista, e dai comparo valores dessa lista com uma lista já criada. exemplo se eu digitei maça e na lista frutas tem maça, como eu faço essa busca?
Faça uma programa que dada a entrada de uma lista ele faça o cálculo
acumulativo da mesma:
Exemplo de entrada: [1, 2, 3, 4]
Exemplo de saída: [1, 3, 6, 10]
Não consigo somar um elemento de uma lista com o elemento anterior. Como posso fazer nessa questão?