Maison >développement back-end >Tutoriel Python >Parlons de l'analyse, de la gestion et de l'extraction des données des fichiers Python

Parlons de l'analyse, de la gestion et de l'extraction des données des fichiers Python

WBOY
WBOYavant
2022-08-25 11:46:461716parcourir

【Recommandation associée : Tutoriel vidéo Python3

Résumé des prérequis

Python2.0 a un problème car il ne peut pas lire directement les chemins chinois et vous devez écrire des fonctions supplémentaires. python3.0 ne peut pas être lu directement en 2018.

Quand je l'utilise maintenant, je trouve que python3.0 peut lire directement les chemins chinois.

Vous devez apporter ou créer plusieurs fichiers txt. Il est préférable d'y écrire quelques données (nom, numéro de téléphone portable, adresse)

Exigences

Il est préférable d'écrire du code vous-même et de définir quelques exigences. clarifier les objectifs suivants :

  • Besoin de lire tous les fichiers correspondants dans le chemin du répertoire correspondant
  • Lire les enregistrements de chaque fichier txt correspondant ligne par ligne
  • Utiliser des expressions régulières pour obtenir le numéro de téléphone portable de chaque ligne
  • Enregistrez le numéro de téléphone mobile dans Excel

Idées

  • 1) Lire des fichiers
  • 2) Lire des données
  • 3) Tri des données
  • 4) Correspondance d'expressions régulières
  • 5) Déduplication de données
  • 6) Exportation de données et save

Code

import glob
import re
import xlwt
filearray=[]
data=[]
phone=[]
filelocation=glob.glob(r'课堂实训/*.txt')
print(filelocation)
for i in range(len(filelocation)):
file =open(filelocation[i])
file_data=file.readlines()
data.append(file_data)
print(data)
combine_data=sum(data,[])

print(combine_data)
for a in combine_data:
data1=re.search(r'[0-9]{11}',a)
phone.append(data1[0])
phone=list(set(phone))
print(phone)
print(len(phone))

#存到excel中
f=xlwt.Workbook('encoding=utf-8')
sheet1=f.add_sheet('sheet1',cell_overwrite_ok=True)
for i in range(len(phone)):
sheet1.write(i,0,phone[i])
f.save('phonenumber.xls')

Le résultat en cours d'exécution

générera un fichier Excel

analyse

import glob
import re
import xlwt

globe est utilisé pour localiser le fichier, concernant l'expression régulière, xlwt est utilisé pour Excel

1) pour lire le fichier

filelocation=glob.glob(r'课堂实训/*.txt')

Tous les fichiers txt dans le répertoire spécifié

2) Lire les données

for i in range(len(filelocation)):
file =open(filelocation[i])
file_data=file.readlines()
data.append(file_data)
print(data)

Parcourez les fichiers txt sous le chemin et lisez les fichiers dans l'ordre par numéro de série
Ouvrez le fichier correspondant à chaque cycle
Lisez le txt pour chaque cycle Les données du fichier sont lues ligne par ligne
Utilisez la méthode append() pour ajouter les données de chaque ligne à la liste de données
Sortez-le, vous pouvez voir que plusieurs données du fichier txt sont stockées dans la même liste sous forme de colonnes de caractères

3) Tri des données

combine_data=sum(data,[])

Liste fusionnée en une seule liste

4) Correspondance d'expression régulière plus déduplication de données

print(combine_data)
for a in combine_data:
data1=re.search(r'[0-9]{11}',a)
phone.append(data1[0])
phone=list(set(phone))
print(phone)
print(len(phone))

fonction set() : Déduplication non ordonnée, crée une ensemble d'éléments non répétitifs

6) Exportation et sauvegarde des données

#存到excel中
f=xlwt.Workbook('encoding=utf-8')
sheet1=f.add_sheet('sheet1',cell_overwrite_ok=True)
for i in range(len(phone)):
sheet1.write(i,0,phone[i])
f.save('phonenumber.xls')
  • Workbook('encoding=utf-8'): Définissez l'encodage du classeur
  • add_sheet('sheet1', cell_overwrite_ok=True) : Créez la feuille de calcul correspondante
  • write(x ,y,z): Les paramètres correspondent aux lignes, aux colonnes et aux valeurs

[Recommandations associées : Tutoriel vidéo Python3]

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer