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 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90
| #!/usr/bin/python
import xlrd
from sys import stderr
from time import strftime,strptime,mktime
fichiers = {
'repName': '/home/nbah/Téléchargements',
'teams': 'Teams_ROA_10_9_2019.xlsx',
'members': 'TeamMembers_ROA_10_9_2019.xlsx'
}
with xlrd.open_workbook('%s/%s' % (fichiers['repName'],fichiers['teams'])) as clasr:
teamSheet = clasr.sheet_by_index(0)
with xlrd.open_workbook('%s/%s' % (fichiers['repName'],fichiers['members'])) as clasr:
memberSheet = clasr.sheet_by_index(0)
for r in range(2,teamSheet.nrows):
t = teamSheet.row_values(r)
code,categ,continent = t[0],t[2],t[4]
if not t[2] in Equipes:
Equipes.update(
{
categ: {
continent: [
{
code : {
'name': t[1],
'category': t[2],
'country': t[3],
'continent': t[4],
'format': t[5],
'email': t[6],
'webSite': t[7],
'riders': [],
'staff': []
}
}
]
}
}
)
elif not t[4] in Equipes[categ]:
Equipes[categ].update(
{
continent: [{
code : {
'name': t[1],
'category': t[2],
'country': t[3],
'continent': t[4],
'format': t[5],
'email': t[6],
'webSite': t[7],
'riders': [],
'staff': []
}
}]
}
)
else:
Equipes[categ][continent][0].update(
{
code : {
'name': t[1],
'category': t[2],
'country': t[3],
'continent': t[4],
'format': t[5],
'email': t[6],
'webSite': t[7],
'riders': [],
'staff': []
}
}
)
###
ici le dictionnaire est complet
###
for r in range(2,memberSheet.nrows):
m = memberSheet.row_values(r)
if m[0] == 'Rider':
###
à un moment, une clé a disparu, et le programme échoue : KeyError
###
Equipes[m[5]][m[7]][0][m[8]]['riders'].append( m )
else:
if m[0] == 'Ass. Sports Director': m[0] = 'Sports Director Ass.'
Equipes[m[5]][m[7]][0][m[8]]['staff'].append( m ) |
Partager