Jump to content
Fórum Script Brasil
  • 0

Ajuda escrevendo em CSV


Question

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 to post
Share on other sites

5 answers to this question

Recommended Posts

  • 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 to post
Share on other 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 to post
Share on other sites

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.

Guest
Answer this question...

×   Pasted as rich text.   Paste as plain text instead

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.



  • Forum Statistics

    • Total Topics
      149403
    • Total Posts
      645891
×
×
  • Create New...