Accueil > Forum > > > > je plante python toutes les 3 lignes
je plante python toutes les 3 lignes
jeudi 17 février 2005 à 23:13:29 |
je plante python toutes les 3 lignes

steede
|
bonjour,
Sauriez vous me dire pourquoi le fichier suivant à l'execution :
from os import *
def openfich(): filename = raw_input('Enter file name: ') file = open(filename, 'r') allLines = file.readlines()
retourne l'erreur :
Traceback (most recent call last): File "<pyshell#1>", line 1, in -toplevel- openfich() File "C:\Python24\_M300\chsys.pyw", line 5, in openfich file = open(filename, 'r') TypeError: an integer is required
le code est tiré d'un exemple...
Merci.
|
|
vendredi 18 février 2005 à 08:50:20 |
Re : je plante python toutes les 3 lignes

rodrigos
|
salut,
au lieu de la commande open tu peux essayer la commande file(filename, 'r')
en plus file est une méthode de python donc à eviter comme nom de variable:
fichier = file(filename, 'r')
|
|
vendredi 18 février 2005 à 13:11:46 |
Re : je plante python toutes les 3 lignes

steede
|
J'avais déjà remarqué que file est une méthode de python, mais bon...
Par contre aujourd'hui le prog. marche sans problème (sans modif !!!).
Je soupçonne mon firewall de ne pas tout laisser passer et de squeezer qqe octets.
C'est AVAST antivirus. Avez vous ce genre de probléme ?
Merci.
|
|
mardi 22 février 2005 à 11:38:57 |
Re : je plante python toutes les 3 lignes

taz_iup
|
Voici la réponse a ta question :
Extrait de la doc en ligne de python 2.4 ( www.python.org ) :
| open( |
file, flags[,
mode]) |
- Open the file file and set various flags according to
flags and possibly its mode according to mode. The default
mode is
0777 (octal), and the current umask value is
first masked out. Return the file descriptor for the newly opened file.
Availability: Macintosh, Unix, Windows.
For a description of the flag and mode values, see the C run-time
documentation; flag constants (like O_RDONLY and O_WRONLY) are defined in this module too (see below).
en gros open prend un nom de fichier, un flag( un entier ) et facultativement un mode ( le 'r' )
Il manque donc le parametre flag.
Puis pour reprendre ce qui a été dit cee n'est pas tres malin
d'utiliser comme nom de variable des fonction et nom de classes
built-in. si tu es comme moi un peu radin sur le nombre de caractere
pour les nom de vraible tu n'a qu'a l'appeler fd ou df ( si tu prefere
en francais ) pour File Descriptor ( ou Descripteur de Fichier en
francais. ) comme ca tu n'auras plus de problème de nommage. :D
Voila A plus.
|
|
mardi 22 février 2005 à 11:46:17 |
Re : je plante python toutes les 3 lignes

taz_iup
|
Réponse acceptée !
Encore une petite précision
j'avais oublie de copier la petite note...
Note: This function is intended for low-level I/O. For normal
usage, use the built-in function open(), which returns a
``file object'' with read() and write() methods (and many more).
Le truc c'est qu'étant donnée la manière don est ilmporte os, os.open écrase la fonction open built-in donc la doc est :
| open( |
filename[, mode[,
bufsize]]) |
- An alias for the file() function above.
la methode file dont te parlait le jeune homme avant moi. ( toujours extrait de la doc en ligne. )
| file( |
filename[, mode[,
bufsize]]) |
- Return a new file object (described in section 2.3.9, ``File Objects''). The first two arguments are
the same as for
stdio's fopen():
filename is the file name to be opened, mode indicates how
the file is to be opened: 'r' for reading, 'w' for
writing (truncating an existing file), and 'a' opens it for
appending (which on some Unix systems means
that all writes append to the end of the file, regardless of the
current seek position).
Modes 'r+', 'w+' and 'a+' open the
file for updating (note that 'w+' truncates the file). Append
'b' to the mode to open the file in binary mode, on systems that
differentiate between binary and text files (else it is ignored). If the file
cannot be opened, IOError is raised.
In addition to the standard fopen() values
mode may be 'U' or 'rU'. If Python is built
with universal newline support (the default) the file is opened as a text file,
but lines may be terminated by any of '\n', the Unix end-of-line
convention, '\r', the Macintosh convention or '\r\n',
the Windows convention. All of these external representations are seen as
'\n' by the Python program. If Python is built without universal
newline support mode 'U' is the same as normal text
mode. Note that file objects so opened also have an attribute called newlines which has a value of None (if no
newlines have yet been seen), '\n', '\r',
'\r\n', or a tuple containing all the newline types seen.
If mode is omitted, it defaults to 'r'. When opening
a binary file, you should append 'b' to the mode value
for improved portability. (It's useful even on systems which don't treat binary
and text files differently, where it serves as documentation.) The optional bufsize argument specifies the
file's desired buffer size: 0 means unbuffered, 1 means line buffered, any other
positive value means use a buffer of (approximately) that size. A negative
bufsize means to use the system default, which is usually line
buffered for tty devices and fully buffered for other files. If omitted, the
system default is used.
The file() constructor is new in Python 2.2. The
previous spelling, open(), is retained for
compatibility, and is an alias for file()
A mon avis, etant donné qu'il utilise la methode readlines, dans ton
exemple il voulait plutot utilise la fonction built-in alors change ton
import en import os et rajoute os. devant chaque fonction qui provienne
de ton module. ( en effet il n'y a pas de meth readlines sur un
descripteur de fichier, c'est un entier :) )
Bon voila en esperant t'avoir eclairer...
@ +
|
|
Cette discussion est classée dans : file, filename, python, plante, openfich
Répondre à ce message
Sujets en rapport avec ce message
tutoriaux python [ par slachz ]
voilà un tuto FR tres remplie en python (il existe en bouquin mais est telechargeable gratuitement) :http://www.ulg.ac.be/cifen/inforef/swi/python.htm
installation python [ par champagnef ]
Bonjour,je suis nouveau sur python. J'apprends (en amateur intéressé) avec le cours de G. Swinnen et autres tuto.Je suis sur Mac Os X.3.5 et je pense
Projet Python: Lecteur de flux RSS. [ par Marvin ]
Amis codeurs, bien le bonjour (ou plutot bonsoir car il est 00:33 ( GTM + 1h ) ) ,J'ai en tête depuis déja quelques jours, de créer un lecteur de flux
Paramétrage de python [ par deguelatore ]
salut à tous. Je voulai vous demandez si on peut se débarrasser du mode interactif de python?? Vous savez les 3 flèches (>>>).C'est juste pas ce que c
Tk vs wx [ par bonac ]
Bonjour,Je doit faire une assez grosse application en python, le problème est que je ne connaissait pas python (du moins de nom) le mois dernier. Cett
Help : Python/DB/CGI [ par Chill_Sik ]
Bonjour à tous, voila qqjours que je me casse les dents sur un petit problème alors je me décide a appeler "au secour" car on ne sait jamais que certa
WebCam [ par DoudouBidou ]
Après plusieurs recherche je n'ai pas trouvé de script python capable de diffusé une webcam sur un réseaudonc je lance le débat, est-il possible de ré
dll avec python? [ par LokR ]
Salut tout le monde!je me pose une kestion, je pense pas que ce soit possible mais d'un autre coté je pensais pas kon puisse faire d' *.exe avec pytho
aide pour xchat svp [ par Jamu ]
Salut a tous Je debute sur xchat et le python ben je connais pas,j'ai chercher des tuto sur google mais j'ai trouvé que des tuto de python en général
les variables vu par Plone... [ par onlybjork ]
Bonjour.Je suis designer, et dans le cadre d'une intégration de charte sous plone, j'ai besoin d'incrémenter tout simplement une variable. Seulement,
Livres en rapport
|
Derniers Blogs
ENUMERABLECOLLECTIONENUMERABLECOLLECTION par Matthieu MEZIL
Prenons le scénario suivant. On utilise MVVM. On a les deux classes suivantes dans le model : public class Child { } public class Parent { private ObservableCollection < Child > _children; public ObservableCollection < Child > Children { get {...
Cliquez pour lire la suite de l'article par Matthieu MEZIL [HS] CHROME 6 + MOI = COUP DE GUEULE ![HS] CHROME 6 + MOI = COUP DE GUEULE ! par JeremyJeanson
Attention, le poste qui suit n'est pas la complainte d'une personne : Qui n'aime pas Chrome. D'un anti Google. D'un développeur qui a un poil énorme dans la main. Ceux qui me fréquentent savent que je change de navigateur favori tous les 2 ou 3 mois afin ...
Cliquez pour lire la suite de l'article par JeremyJeanson [WP7] UTILISER UN WRAPPANEL DANS UNE APPLICATION WINDOWS PHONE 7[WP7] UTILISER UN WRAPPANEL DANS UNE APPLICATION WINDOWS PHONE 7 par Audrey
Lors de la réalisation de ma 2ème application Windows Phone 7, j'ai souhaité utiliser un WrapPanel pour afficher plusieurs photos. Mais le contrôle WrapPanel ne fait pas parti de la liste des contrôles inclus dans le SDK de la version Beta des outils pour...
Cliquez pour lire la suite de l'article par Audrey [WP7] BESOIN D'AVOIR DES DONNéES EN CACHE[WP7] BESOIN D'AVOIR DES DONNéES EN CACHE par Nicolas
Les développeurs ASP.NET ont l'habitude de mettre des données en cache pour éviter de requêter a chaque fois la base de données. Et il est toujours utilie de penser que vos utilisateurs mobiles n'ont pas troujours une super connexion 3G/WIFI et un for...
Cliquez pour lire la suite de l'article par Nicolas [TFS] COMMENT FORCER LA SAISIE D'UN AREA OU ITERATION[TFS] COMMENT FORCER LA SAISIE D'UN AREA OU ITERATION par cyril
Lorsque l'on créé un Work Item dans TFS, il est possible de le classer dans un "area" et dans une "iteration". Dans la plupart des types de projet, un "area" correspond à une catégorie, une "iteration" à un numéro de version. Il est possible de cré...
Cliquez pour lire la suite de l'article par cyril
Forum
RE : PYTHON 3.0RE : PYTHON 3.0 par aera group
Cliquez pour lire la suite par aera group RE : PYTHON 3.0RE : PYTHON 3.0 par xeolin
Cliquez pour lire la suite par xeolin RE : PYTHON 3.0RE : PYTHON 3.0 par aera group
Cliquez pour lire la suite par aera group
Logiciels
uTorrent (2.0.4)UTORRENT (2.0.4)C'est un client BitTorrent très puissant et très performant. Comme son nom l'indique, uTorrent (m... Cliquez pour télécharger uTorrent Bureau de Gestion - ERP Devis Facturation (2.02)BUREAU DE GESTION - ERP DEVIS FACTURATION (2.02)- Version gratuite du 10/06/2010
Le Bureau de Gestion est un logiciel dédié à la gestion de l'en... Cliquez pour télécharger Bureau de Gestion - ERP Devis Facturation 4Videosoft Transfert iPod Mac (3.2.08)4VIDEOSOFT TRANSFERT IPOD MAC (3.2.08)4Videosoft Transfert iPod-Mac caractérise principalement à transférer les fichiers iPod vers Mac.... Cliquez pour télécharger 4Videosoft Transfert iPod Mac 4Videosoft HD Convertisseur (3.3.08)4VIDEOSOFT HD CONVERTISSEUR (3.3.08)Etant le meilleur HD Vidéo Convertisseur, 4Videosoft HD Convertisseur, vous pouvez regarder la vi... Cliquez pour télécharger 4Videosoft HD Convertisseur 4Videosoft Transfert iPad Mac (3.2.08)4VIDEOSOFT TRANSFERT IPAD MAC (3.2.08)4Videosoft Transfert iPad-Mac est un logiciel managérial iPad professionnel qui a des fonctions i... Cliquez pour télécharger 4Videosoft Transfert iPad Mac
|