Bonjour à tous,

Je lis un tableau excel en utilisant xlrd et je remplis un tableau K99 de la façon suivante:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
 
import xlrd3 as xlrd
import numpy as np
b = xlrd.open_workbook('données.xls')
s=b.sheet_by_index(0)
K99=[]
 
for row in range(s.nrows):
    this_row = []
    for col in range(s.ncols):
        this_row.append(s.cell_value(row,col))
    if K99==[]:
        K99.append(this_row)
    elif K99!=[]:
        K99=np.vstack((K99, this_row))
Tout se passe pour le mieux pour les premières valeurs. Mon tableau K99 se remplit normalement.

Mais lorsque this_row contient des valeurs supérieur à la dizaine de million, np.vstack ajoute a K99 ces valeurs mais sans l'unité. Exemple :
Tableau excel : 42 116 156.00
valeur dans this_row:42 116 156.00
valeur dans K99 : 42 116 15

Embêtant !

Autre exemple tiré de mes données :

la valeur de this_row :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
 
['', 'x', 41014.0, 21666240.0, 21666440.0, 21666627.0, 21666779.0, 21666896.0, 21667068.0, 21667172.0, 21667322.0, 21667510.0, 21667844.0, 21668418.0, 21669223.0, 21669988.0, 21670835.0, 21671670.0, 21672451.0, 21672979.0, 21673533.0, 21674169.0, 21674949.0, 21675630.0, 21676496.0, 21677364.0, 21678166.0, 21678458.0]
la ligne dans K99:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
 
 [['' 'x' '41014.0' '2166624' '2166644' '2166662' '2166677' '2166689'
  '2166706' '2166717' '2166732' '2166751' '2166784' '2166841' '2166922'
  '2166998' '2167083' '2167167' '2167245' '2167297' '2167353' '2167416'
  '2167494' '2167563' '2167649' '2167736' '2167816' '2167845']]
Quelqu'un a une idée ?

Changement de format dans this_row à effectué ?

Merci d'avance