IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Python Discussion :

Copier/Coller un code sur BlockNote


Sujet :

Python

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2018
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Copier/Coller un code sur BlockNote
    Bonjour,

    Je ne parviens pas à ouvrir un code python préalablement copié sur BlockNote sur l'application Python.

    Ci-dessous, voici ledit code :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    >>># -*-coding:Latin-1 -*
     
    >>>import os
     
    >>>annee = input("Saisissez une année : ") 
    >>>annee = int(annee)
     
    >>>if annee % 400 == 0 or (annee % 4 == 0 and annee % 100 != 0):
              print("L'année saisie est bissextile.")
    >>>else:
             print("L'année saisie n'est pas bissextile.")
     
    >>>os.system("pause")
    Le fichier est bien enregistré sous format .py, mais ne s'ouvre pas.

    Avez-vous une solution ?

    Merci d'avance pour votre aide.

    Thomas.

  2. #2
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Ce que vous montrez n'est pas du code mais un dialogue avec l'interpréteur Python (à cause des lignes qui commencent par '>>>').

    Ensuite quelque soit le type du fichier, l'ouvrir avec le programme qui va bien est réalisé par un mécanisme d'association entre l'extension (ou le fichier) et le programme géré par le système (pas par Python).
    La documentation Python explique comment faire sur les différents systèmes (mais comme vous n'avez même pas dit sur lequel vous bossez...).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  3. #3
    Futur Membre du Club
    Homme Profil pro
    Enseignant
    Inscrit en
    Octobre 2018
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Pas de Calais (Nord Pas de Calais)

    Informations professionnelles :
    Activité : Enseignant

    Informations forums :
    Inscription : Octobre 2018
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Merci de votre réponse.

    Très sympa ce petit ton... : "(mais comme vous n'avez même pas dit sur lequel vous bossez...)"

    quelque soit
    : on écrit quel que soit, et non quelque soit.

    Bref, je suis un cours MOOC Débuter avec Python.

    On nous explique que la ligne de code # -*-coding:Latin-1 -* est nécessaire sous Windows.

    J'en suis à l'étape où nous devons copier notre code dans un fichier BlockNote.

    Voici le code originel :

    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
    16
    17
    18
    # -*-coding:Latin-1 -*
     
    import os # On importe le module os qui dispose de variables 
              # et de fonctions utiles pour dialoguer avec votre 
              # système d'exploitation
     
    # Programme testant si une année, saisie par l'utilisateur, est bissextile ou non
     
    annee = input("Saisissez une année : ") # On attend que l'utilisateur fournisse l'année qu'il désire tester
    annee = int(annee) # Risque d'erreur si l'utilisateur n'a pas saisi un nombre
     
    if annee % 400 == 0 or (annee % 4 == 0 and annee % 100 != 0):
        print("L'année saisie est bissextile.")
    else:
        print("L'année saisie n'est pas bissextile.")
     
    # On met le programme en pause pour éviter qu'il ne se referme (Windows)
    os.system("pause")
    Une fois enregistré, je devrais pouvoir l'ouvrir pour obtenir la fenêtre de dialogue suivante :

    Entrez une année :

    Cependant, je ne parviens pas à passer cette étape.

    Merci pour vos pistes.

  4. #4
    Expert éminent
    Avatar de tyrtamos
    Homme Profil pro
    Retraité
    Inscrit en
    Décembre 2007
    Messages
    4 462
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Retraité

    Informations forums :
    Inscription : Décembre 2007
    Messages : 4 462
    Points : 9 249
    Points
    9 249
    Billets dans le blog
    6
    Par défaut
    Bonjour,

    Citation Envoyé par Dhaka1212 Voir le message
    Très sympa ce petit ton... : "(mais comme vous n'avez même pas dit sur lequel vous bossez...)"
    Il est vrai que comme Python est multiplateforme, la réponse aux questions dépend souvent de la machine sur laquelle on travaille.

    Citation Envoyé par Dhaka1212 Voir le message
    on écrit quel que soit, et non quelque soit.
    Si vous voulez vraiment de l'aide en Python, la correction des fautes d'orthographe est "hors sujet". D'autant plus que celle-ci est plutôt subtile...


    Citation Envoyé par Dhaka1212 Voir le message
    Bref, je suis un cours MOOC Débuter avec Python.
    Je ne connais pas ce cours MOOC, mais un tuto de référence ici pour apprendre Python est plutôt celui de Gérard Swinnen: https://python.developpez.com/cours/apprendre-python3/.

    Citation Envoyé par Dhaka1212 Voir le message
    On nous explique que la ligne de code # -*-coding:Latin-1 -* est nécessaire sous Windows.
    Non. D'autant plus que l'encodage natif sous Windows en français est "cp1250" et non "latin1" (ou "ISO-8859-1"). Ça ne dépend en fait que de l'éditeur de texte qu'on utilise. Lors de l'exécution du programme, cette ligne dit seulement à l'interpréteur Python quel encodage il doit utiliser pour lire le fichier du programme. Ça concerne surtout les caractères accentués qui se trouvent dans les chaines de caractères et les commentaires. On utilise plutôt l'encodage "utf-8" qui est plus général (Windows, Linux, OS X, iOS, etc...) avec un éditeur de texte capable d'éditer et d'enregistrer sous cet encodage.

    Attention: cette ligne ne résout pas les problèmes d'encodage des entrées/sorties du programme qui ne dépendent que du périphérique utilisé. Par exemple, la console "cmd.exe" de Windows a un encodage "cp850" alors que les consoles de Linux sont maintenant en "utf-8".

    Citation Envoyé par Dhaka1212 Voir le message
    J'en suis à l'étape où nous devons copier notre code dans un fichier BlockNote.
    Je ne connais pas cet éditeur de texte. Il vaudrait mieux utiliser idle qui est livré avec Python. Sous Windows, un autre éditeur de base est "notepad++".

    Citation Envoyé par Dhaka1212 Voir le message
    Voici le code originel :
    Comme l'indentation des lignes a un rôle fonctionnel sous Python, il faut mettre le code entre les tags de code: dans la fenêtre d'édition des messages du forum, on clique sur le '#' en haut et à droite.

    Citation Envoyé par Dhaka1212 Voir le message
    Cependant, je ne parviens pas à passer cette étape.
    Une fois le fichier du programme enregistré, il faut le faire exécuter par l'interpréteur Python. Pour ça, on prend la console (cmd.exe sous Windows), et on tape "python cheminverslefichier\leprogramme.py". Avec idle, c'est plus simple: on demande simplement "Run Module" au menu ou on utilise la touche "F5".
    Un expert est une personne qui a fait toutes les erreurs qui peuvent être faites, dans un domaine étroit... (Niels Bohr)
    Mes recettes python: http://www.jpvweb.com

  5. #5
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Citation Envoyé par Dhaka1212 Voir le message
    On nous explique que la ligne de code # -*-coding:Latin-1 -* est nécessaire sous Windows.
    Super, vous êtes sous Windows...
    Rare environnement système sur lequel Python n'est pas installé par défaut.
    Vous avez donc suivi les instructions données dans le document d'installation et vérifié que tout fonctionnait bien (les tests décrits ici).

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  6. #6
    Expert éminent sénior
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 690
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 690
    Points : 30 985
    Points
    30 985
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par Dhaka1212 Voir le message
    quelque soit
    : on écrit quel que soit, et non quelque soit.
    Très bien vu (personnellement j'apprécie beaucoup quelqu'un qui a une orthographe parfaite). Mais ce n'est peut-être pas super approprié envers un membre éminent qui, même s'il a une personnalité un peu brutale (hier j'ai réussi à le dérider avec un de mes posts c'est bien la première fois ) est quand-même un pilier du forum Python..

    Citation Envoyé par Dhaka1212 Voir le message
    On nous explique que la ligne de code # -*-coding:Latin-1 -* est nécessaire sous Windows.
    J'aime bien ces tutos qui disent "il faut le faire" sans dire pourquoi. On sent que le concepteur du tuto est super à l'aise. Un myope qui guide un aveugle quoi. En tout cas un peu ancien le tuto. Maintenant la syntaxe conseillée serait plutôt # coding: latin-1 (suppression de ces fioritures "-*-") et même # coding: utf-8 vu que l'utf8 est devenu le standard dans tous les éditeurs...

    Citation Envoyé par Dhaka1212 Voir le message
    J'en suis à l'étape où nous devons copier notre code dans un fichier BlockNote.
    Donc en ce qui concerne l'orthographe, c'est plutôt bloc notes qu'il faut écrire. Et si on parle du logiciel windows, alors il se nomme "notepad".
    Maintenant ce logiciel est un peu bas de gammes. Il conviendra parfaitement pour écrire sa liste de courses mais pour ce qui est d'écrire un code avec... Ce n'est pas que ce n'est pas possible mais d'autres logiciels plus adéquats permettront de le faire de façon beaucoup plus efficiente (indentation automatique ce qui est assez important en Python, ouverture/fermeture de blocs qui permettent de masquer des parties de codes sur lesquelles on ne travaille pas, etc). tyrtamos a parlé de notepad++ mais il y en a plein d'autres (ici un comparatif de plusieurs éditeurs)...

    Citation Envoyé par Dhaka1212 Voir le message
    Voici le code originel :
    Donc comme l'a dit tyrtamos, il faut enregistrer ce code dans un fichier d'extension ".py" (l'extension est juste conventionnelle donc n'est pas obligatoire mais ça aide ensuite à voir de quoi il s'agit) puis ensuite, depuis une fenêtre MsDos, taper la commande python.exe nom_fichier.py (il faut aussi que le chemin contenant le programme "python.exe" soit dans le PATH mais les dernières version de Python s'occupent toutes seules de ce détail quand on les installe).

    On peut aussi rajouter #!/usr/bin/env python3 en toute première ligne (mettre "python2" si on est encore sur cette version). Ca indique à l'os comment traiter un tel fichier. Ainsi, ça évite ensuite de devoir taper la commande python.exe nom_fichier.py. On peut depuis Windows double-cliquer sur le fichier ".py". Il s'exécutera alors automatiquement via python dans une fenêtre MsDos qui s'ouvrira automatiquement et qui se refermera une fois le programme terminé (d'où le os.system("pause") en fin de code pour éviter justement que le programme se ferme tout seul).
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  7. #7
    Expert éminent sénior
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 287
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 287
    Points : 36 776
    Points
    36 776
    Par défaut
    Salut,

    Pas la peine de faire une fixette sur # -*- coding:Latin-1 -*, comme c'est beaucoup moins strict qu'utf-8, le programme devrait quand même fonctionner et, éventuellement, afficher des "garbages" à l'écran.
    Donc la question de base reste "avez vous installé Python correctement?" (même si elle ressemble un peu à "avez vous branché la prise?")...
    Le propre des débutants étant d'être assez créatifs quant à la description des soucis qu'ils rencontrent.


    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

Discussions similaires

  1. Copier Coller du Code dans une macro VBA
    Par ted the Ors dans le forum Macros et VBA Excel
    Réponses: 1
    Dernier message: 02/04/2008, 16h11
  2. probleme lors du copier\coller du code
    Par milki1 dans le forum VB 6 et antérieur
    Réponses: 8
    Dernier message: 31/08/2007, 10h11
  3. Copier/coller une table sur une autre fichier mdb
    Par berceker united dans le forum Access
    Réponses: 2
    Dernier message: 12/07/2006, 20h08
  4. Réponses: 1
    Dernier message: 06/07/2006, 19h20
  5. Comment faire Copier/Coller par code VBA sur INTERNET...
    Par GESCOM2000 dans le forum Access
    Réponses: 5
    Dernier message: 02/01/2006, 13h19

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo