Ir para conteúdo
Fórum Script Brasil
  • 0

Ajuda escrevendo em CSV


thiagoaaragao

Pergunta

Olá pessoal,

Sou novo aqui, sou muito iniciante em programação e estou começando com Python. Estou em um projeto pessoal que esta bem adiantado mas estou com uma dificuldade bem especifica, quero escrever em um arquivo CSV somente um número desejado de linhas. Esse comando abaixo gera um arquivo gigante muitas vezes com mais de 30k linhas de dados mas por demonstração do sistema eu quero gravar somente 50 linhas de dados no arquivo;

 

with open("arquivo.csv","w",encoding='UTF-8') as f:#Enter your file name.
    writer = csv.writer(f,delimiter=",",lineterminator="\n")
    writer.writerow(['username','user id','name','group'])
    for user in all_participants:
        if user.username:
            username= user.username
        else:
            username= ""
        if user.first_name:
            first_name= user.first_name
        else:
            first_name= ""
        if user.last_name:
            last_name= user.last_name
        else:
            last_name= ""
        name= (first_name + ' ' + last_name).strip()
        writer.writerow([username,user.id,name,target_group.title])

  Como eu posso fazer para limitar a quantidade de informações gravadas:

 

Muito obrigado pela atenção!

Link para o comentário
Compartilhar em outros sites

5 respostass a esta questão

Posts Recomendados

  • 0

Eu já entendi como o enumerate funciona e comecei observando ele implementado na string abaixo:

with open("arquivo.csv","w",encoding='UTF-8') as f:#Enter your file name.
    writer = csv.writer(f,delimiter=",",lineterminator="\n")
    writer.writerow(['username','user id','name','group'])
    for user in enumerate(all_participants):
        if user.username:
            username= user.username
        else:
            username= ""
        if user.first_name:
            first_name= user.first_name
        else:
            first_name= ""
        if user.last_name:
            last_name= user.last_name
        else:
            last_name= ""
        name= (first_name + ' ' + last_name).strip()
        writer.writerow([username,user.id,name,target_group.title])

Mas esta dando um erro 

AttributeError: 'tuple' object has no attribute 'username'

se puder dar so mais uma pequena dica p eu desempacar porque eu realmente estou engatinhando.

obrigado mais uma vez!

Link para o comentário
Compartilhar em outros sites

  • 0

conseguiu usar o enumerate, vou te dar a dica das dicas: print()

use print para ver a informação e assim ir aos poucos construindo seu script

all_participants = 'ABCDE'

for user in enumerate(all_participants):
  print(user)
  
for pos, user in enumerate(all_participants):
  print(pos)
  print(user)

 

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,3k
    • Posts
      652,3k
×
×
  • Criar Novo...