On m'a dit que je pouvais utiliser Python dans mon entreprise, donc comme mémorandum pour le traitement des données CSV.
infile.csv
number,name,birthymd,sex,yubin,adr1,adr2,sinsei_ymd,nintei_ymd,happu_ymd,type,pet,test_nowymd
0000111111,Taichiro Ando,19860602,1,1231111,BBB City, Préfecture AAA CCC-123,Exemple Villa A Chambre 001,20190501,20190507,20190507,1,0,20200229
0000222222,Ito Sumijiro,19920505,1,1232222,BBB City, Préfecture AAA CCC-123,Exemple Villa B Chambre 002,20190501,20190514,20190514,2,1,20200228
0000333333,Ukai Tasae,19990909,2,1233333,BBB City, Préfecture AAA CCC-123,Exemple Villa C Chambre 003,20190501,20190514,20190514,1,2,20200131
0000444444,Koshiro Esaki,19870831,1,1234444,BBB City, Préfecture AAA CCC-123,Exemple Villa D Chambre 004,20190501,20190507,20190507,2,0,20191231
0000555555,Okamoto Kogoro,19520205,1,1235555,BBB City, Préfecture AAA CCC-123,Exemple Villa E Chambre 005,20190601,20190615,20190615,1,2,20191130
0000666666,Kakizaki Kirokuro,19811030,1,1236666,BBB City, Préfecture AAA CCC-123,Exemple Villa F Chambre 006,20190601,20190608,20190608,1,2,20191129
0000777777,Jojima Kanako,19721103,2,1237777,BBB City, Préfecture AAA CCC-123,Exemple de chambre Villa G 007,20190601,20190608,20190608,2,1,20191030
0000888888,Nagimiya Ahachime,19330303,2,1238888,BBB City, Préfecture AAA CCC-123,Exemple Villa H Chambre 008,20190501,20190507,20190507,1,1,20190401
0000999999,Keido Kankuro,19680229,1,1239999,BBB City, Préfecture AAA CCC-123,Exemple Villa I Chambre 009,20190601,20190615,20190615,2,0,20190331
1111000000,Koyanagi Sarujuro,19200222,1,1240000,BBB City, Préfecture AAA CCC-123,Exemple Villa J Chambre 010,20190501,20190507,20190507,2,1,20190228
1111111111,Juichiro Sato,19430130,1,1241111,BBB City, Préfecture AAA CCC-123,Exemple de chambre Villa K 011,20190601,20190608,20190608,1,0,20190227
1111222222,Shishido Jujiro,19530301,1,1242222,BBB City, Préfecture AAA CCC-123,Exemple Villa L 012,20190501,20190507,20190507,2,1,20190131
csv_in_out.py
#Initialisation variable
##Variables pour les compteurs
[line_count, person_count] = [0, 0]
##Variables liées aux valeurs d'entrée
[number, name, birthymd, sex, post, adr1, adr2, ymd_sinsei, ymd_nintei, ymd_happu, types, pet, ymd_test] = ['', '', '', '', '', '', '', '', '', '', '', '', '']
##Variable 1 liée à la valeur de sortie
[birth_year, birth_month, birth_day, infile, outfile, line, item_str, data_str] = [0, 0, 0, '', '', '', '', '']
##Variable 2 liée à la valeur de sortie (tableau vide)
item = set()
data = set()
#Lors de l'ouverture lors de la spécification du code de saut de ligne du fichier.
## \n(LF): OS basé sur Unix en général, Mac OS X, \r\n(CR+LF): Système d'exploitation Windows, \r(CR): Ancien Mac OS (9 ou antérieur)
with open('infile.csv', 'r', encoding='utf-8', newline='\n') as infile, \
open('outfile.csv', 'w', encoding='utf-8', newline='\n') as outfile:
#Lire et traiter le contenu du fichier ligne par ligne
for line in infile:
#Mappez les éléments de la ligne de lecture sous forme de chaîne de caractères aux variables correspondantes dans l'ordre à partir du début, séparées par des virgules.
number, name, birthymd, sex, post, adr1, adr2, ymd_sinsei, ymd_nintei, ymd_happu, types, pet, ymd_test \
= map(str, line.split(','))
#Lire le nombre de lignes CSV +1
line_count += 1
#La première ligne du nombre de lignes CSV lues est le nom de l'élément. Les données réelles proviennent de la deuxième ligne.
#Exemple de sortie de console pour la confirmation 1: ○ Traitement oculaire
if line_count >= 2:
person_count += 1
#Sortie de la console
print(u'{}Nous traitons les yeux....'.format(person_count))
#Exemple de sortie de console pour la confirmation 2: la date de naissance est supprimée à zéro et affichée
if line_count >= 2:
birth_year = int(birthymd[0:4])
birth_month = int(birthymd[4:6])
birth_day = int(birthymd[6:8])
print(u'Date de naissance{}/{}/{}est.'.format(birth_year,birth_month,birth_day))
#Exemple de sortie de console pour confirmation 3: Afficher le numéro, le nom, la date de naissance sous forme d'ensemble
if line_count >= 2:
#Sortie de la console (chaîne modifiée)
print(u'nombre{}de{}Est{}/{}/{}naissance.'.format(number,name,birth_year,birth_month,birth_day))
#La partie principale du traitement pour la sortie.
##Après avoir spécifié le nom de l'élément et les données réelles que vous souhaitez générer dans un tableau, remplacez-le par une chaîne de caractères séparés par des virgules et imprimez-le dans outfile.
if line_count == 1:
#Sortie de fichier (chaîne de caractères séparés par des virgules: nom de l'élément)
item = ["nombre", "Nom complet", "Anniversaire", "sexe", "郵便nombre", "Adresse 1", "Adresse 2", "Date de la demande", "Date de certification", "Date d'émission", "Type", "Animal de compagnie", "Date du test"]
item_str = ",".join(map(str, item))
print(item_str, file=outfile)
if line_count >= 2:
#Sortie de fichier (chaîne de caractères séparés par des virgules: données réelles)
# < !Si vous souhaitez traiter les données ou les compter, écrivez la logique ici.! >
data = [number, name, birthymd, sex, post, adr1, adr2, ymd_sinsei, ymd_nintei, ymd_happu, types, pet, ymd_test]
data_str = ",".join(map(str, data))
print(data_str, file=outfile, end='')
#Exemple de sortie console pour confirmation 4: Afficher les données de sortie
if line_count >= 2:
print(u'file output >> {}'.format(data_str),end='')
#Exemple de sortie de la console de confirmation 5: Affichage du nombre total de processus
print(u'') #nouvelle ligne
print(u'total{}A traité l'affaire.'.format(person_count))
outfile.csv
nombre,Nom complet,Anniversaire,sexe,郵便nombre,Adresse 1,Adresse 2,Date de la demande,Date de certification,Date d'émission,Type,Animal de compagnie,Date du test
0000111111,Taichiro Ando,19860602,1,1231111,BBB City, Préfecture AAA CCC-123,Exemple Villa A Chambre 001,20190501,20190507,20190507,1,0,20200229
0000222222,Ito Sumijiro,19920505,1,1232222,BBB City, Préfecture AAA CCC-123,Exemple Villa B Chambre 002,20190501,20190514,20190514,2,1,20200228
0000333333,Ukai Tasae,19990909,2,1233333,BBB City, Préfecture AAA CCC-123,Exemple Villa C Chambre 003,20190501,20190514,20190514,1,2,20200131
0000444444,Koshiro Esaki,19870831,1,1234444,BBB City, Préfecture AAA CCC-123,Exemple Villa D Chambre 004,20190501,20190507,20190507,2,0,20191231
0000555555,Okamoto Kogoro,19520205,1,1235555,BBB City, Préfecture AAA CCC-123,Exemple Villa E Chambre 005,20190601,20190615,20190615,1,2,20191130
0000666666,Kakizaki Kirokuro,19811030,1,1236666,BBB City, Préfecture AAA CCC-123,Exemple Villa F Chambre 006,20190601,20190608,20190608,1,2,20191129
0000777777,Jojima Kanako,19721103,2,1237777,BBB City, Préfecture AAA CCC-123,Exemple de chambre Villa G 007,20190601,20190608,20190608,2,1,20191030
0000888888,Nagimiya Ahachime,19330303,2,1238888,BBB City, Préfecture AAA CCC-123,Exemple Villa H Chambre 008,20190501,20190507,20190507,1,1,20190401
0000999999,Keido Kankuro,19680229,1,1239999,BBB City, Préfecture AAA CCC-123,Exemple Villa I Chambre 009,20190601,20190615,20190615,2,0,20190331
1111000000,Koyanagi Sarujuro,19200222,1,1240000,BBB City, Préfecture AAA CCC-123,Exemple Villa J Chambre 010,20190501,20190507,20190507,2,1,20190228
1111111111,Juichiro Sato,19430130,1,1241111,BBB City, Préfecture AAA CCC-123,Exemple de chambre Villa K 011,20190601,20190608,20190608,1,0,20190227
1111222222,Shishido Jujiro,19530301,1,1242222,BBB City, Préfecture AAA CCC-123,Exemple Villa L 012,20190501,20190507,20190507,2,1,20190131
Sortie de confirmation
Nous traitons la première personne....
La date de naissance est 1986/6/C'est 2.
Taichiro Ando avec le numéro 0000111111 est 1986/6/Né 2
file output >> 0000111111,Taichiro Ando,19860602,1,1231111,BBB City, Préfecture AAA CCC-123,Exemple Villa A Chambre 001,20190501,20190507,20190507,1,0,20200229
Nous traitons la deuxième personne....
La date de naissance est 1992/5/Il est 5.
Ito Sumijiro avec le numéro 0000222222 est 1992/5/Né 5
file output >> 0000222222,Ito Sumijiro,19920505,1,1232222,BBB City, Préfecture AAA CCC-123,Exemple Villa B Chambre 002,20190501,20190514,20190514,2,1,20200228
Nous traitons la troisième personne....
La date de naissance est 1999/9/Il est 9.
Ukai Tasae avec le numéro 0000333333 est 1999/9/Né en 9.
file output >> 0000333333,Ukai Tasae,19990909,2,1233333,BBB City, Préfecture AAA CCC-123,Exemple Villa C Chambre 003,20190501,20190514,20190514,1,2,20200131
Nous traitons la 4ème personne....
La date de naissance est 1987/8/Il est 31 ans.
Koshiro Esaki avec le numéro 0000444444 est 1987/8/Née 31
file output >> 0000444444,Koshiro Esaki,19870831,1,1234444,BBB City, Préfecture AAA CCC-123,Exemple Villa D Chambre 004,20190501,20190507,20190507,2,0,20191231
Nous traitons la 5ème personne....
La date de naissance est 1952/2/Il est 5.
Kogoro Okamoto avec le numéro 0000555555 est 1952/2/Né 5
file output >> 0000555555,Okamoto Kogoro,19520205,1,1235555,BBB City, Préfecture AAA CCC-123,Exemple Villa E Chambre 005,20190601,20190615,20190615,1,2,20191130
Nous traitons la 6ème personne....
La date de naissance est 1981/10/Il est 30 ans.
Kakizaki Kirokuro avec le numéro 0000666666 est 1981/10/Née 30
file output >> 0000666666,Kakizaki Kirokuro,19811030,1,1236666,BBB City, Préfecture AAA CCC-123,Exemple Villa F Chambre 006,20190601,20190608,20190608,1,2,20191129
Nous traitons la 7ème personne....
La date de naissance est 1972/11/C'est 3.
Kanako Jojima avec le numéro 0000777777 est 1972/11/Né 3
file output >> 0000777777,Jojima Kanako,19721103,2,1237777,BBB City, Préfecture AAA CCC-123,Exemple de chambre Villa G 007,20190601,20190608,20190608,2,1,20191030
Nous traitons la 8ème personne....
La date de naissance est 1933/3/C'est 3.
Nagimiya Ahachime avec le numéro 0000888888 est 1933/3/Né 3
file output >> 0000888888,Nagimiya Ahachime,19330303,2,1238888,BBB City, Préfecture AAA CCC-123,Exemple Villa H Chambre 008,20190501,20190507,20190507,1,1,20190401
Nous traitons la 9ème personne....
Date de naissance: 1968/2/Il est 29 ans.
Keido Kankuro avec le numéro 0000999999 est 1968/2/Né le 29.
file output >> 0000999999,Keido Kankuro,19680229,1,1239999,BBB City, Préfecture AAA CCC-123,Exemple Villa I Chambre 009,20190601,20190615,20190615,2,0,20190331
Nous traitons la 10ème personne....
La date de naissance est 1920/2/Il est 22 ans.
Koyanagi Sarjuro avec le numéro 1111000000 est 1920/2/22 Né.
file output >> 1111000000,Koyanagi Sarujuro,19200222,1,1240000,BBB City, Préfecture AAA CCC-123,Exemple Villa J Chambre 010,20190501,20190507,20190507,2,1,20190228
Nous traitons la 11e personne....
La date de naissance est 1943/1/Il est 30 ans.
Juichiro Sato avec le numéro 1111111111 est 1943/1/Née 30
file output >> 1111111111,Juichiro Sato,19430130,1,1241111,BBB City, Préfecture AAA CCC-123,Exemple de chambre Villa K 011,20190601,20190608,20190608,1,0,20190227
Nous traitons la 12ème personne....
La date de naissance est 1953/3/C'est 1.
Shishido Jujiro avec le numéro 1111222222 est 1953/3/Né 1
file output >> 1111222222,Shishido Jujiro,19530301,1,1242222,BBB City, Préfecture AAA CCC-123,Exemple Villa L 012,20190501,20190507,20190507,2,1,20190131
Au total, 12 cas ont été traités.
Peut-il être utilisé comme modèle pour le traitement simple ou l'agrégation des valeurs d'élément contenues dans les données CSV?
Recommended Posts