Dator
 |  Startsida |  Hårdvara |  Nätverk |  Programmering |  Programvara |  Felsökning |  System |   
Programmering
  • C /C + + -programmering
  • Computer Programspråk
  • Delphi Programmering
  • Java Programming
  • JavaScript programmering
  • PHP /MySQL Programmering
  • perl Programmering
  • python Programming
  • Ruby programmering
  • Visual Basics Programmering
  • * Dator Kunskap >> Programmering >> python Programming >> Content

    Hur man bygger en Parser i Python

    I Python , liksom i många andra språk , det är det nödvändigt att hantera indata till ett program startas från kommandoraden . Python " sys " biblioteket innehåller ett större antal systemspecifika parametrar, inklusive funktioner som är nödvändiga för att hantera argument från kommandoraden . Python " getopt " biblioteket tillhandahåller en användbar metod för att analysera ett stort antal kommandoradsargument och flaggor i olika format . Setup

    Öppna en textredigerare och börja skriva ett nytt Python dokument . Formatera program enligt följande . Den " sys " Biblioteket innehåller funktioner för hantering av argument variabler . Du kommer band sys.argv [ 0 ] eftersom det är namnet på skriptet , i det här fallet " my_program.py . " The " __name__ " check säkerställer att ditt manus hette från kommandoraden , snarare än ett annat program .

    # my_program.pyimport getopt , sys

    def main ( argv ) : # Argument parser kommer gå här

    om __ name__ == " __main__ " : main ( sys . argv [ 1 : ] )
    Använda getopt

    Ring " getopt.getopt ( ) " -funktion från din " main ( ) " -funktion med följande syntax . För detta exempel , argument till " my_program.py " inkluderar en flagga " - v " för utförlig output , en " - h " eller " - help " flagga för att skriva ut användningen , och ett " -i " eller " - input " för att ange en indatafil

    def main ( argv ) : . prova : väljer , args = getopt.getopt ( argv , " hej : v " , [ "hjälp " , " input " ] ) , utom utom getopt.GetoptError , fela : print str ( err ) ; # print errorusage ( ) ; # Användarvänlig skriftligt funktion för att skriva ut lämplig användning av programsys.exit ( 2 ) , # satt defaultsverbose = False ; indatafil = None , för o , en i väljer : om o ( " - h " , " - help " ) : användning ( ) ; sys.exit ( ) ; Elif o == " - v " : verbose = true; Elif o ( " - i " , " - input " ) : ; : " . Unknown argument " indatafil = ett annat hävda False ,

    om ( indatafil == None ) : print " . ingen infil ges " , användning ( ) ; sys.exit ( 2 ) ,
    Använda Argparser

    " argparser " biblioteket tillhandahåller ett liknande sätt att analysera argument med mindre kod och mer utförliga felmeddelanden

    import argpase , sys

    def main ( ) : . parser = = Parser.parse_args ( ) # Kod för att kontrollera giltigheten i argument
    Överväganden
    p Om du förbereder din Python program för distribution , är det viktigt att hantera all möjlig användning scenarier vid kontroll av inmatade argument . Till exempel bör ett filnamn kontrolleras för att avgöra om det länkar till en fil med lämpligt format . Andra variabler bör kontrolleras för att fastställa att deras värde har betydelse inom programmet .

    Tidigare:

    nästa:
    relaterade artiklar
    ·Konvertera JSON till CSV i Python
    ·Den Python Strip Funktion
    ·Vad är Win32 Extension för Python
    ·Hur Override en funktion i Python
    ·Hur får Koordinater för Linux Markör
    ·Hur man testar en IP- Range i Python
    ·String Verksamheten i Python
    ·Hur du kontrollerar att ett index Finns i Python
    ·Hur till Redigera PYD filer
    ·Hur vill kolla Variabla Klasser i Python
    Utvalda artiklarna
    ·Hur man använder getline i C Skip Cin.Ignore
    ·Hur Decode PHP Code
    ·Hur man gör en iPhone App Really Simple
    ·Hur : Xcode Med PHP
    ·JavaScript Ringa en funktion från en funktion
    ·Så att studera programmeringsspråket Python
    ·Konvertera ett decimaltal till ett heltal i Java
    ·Hur man sparar filen med en tid och datum i LabVIEW
    ·Så logga in med Python till Facebook
    ·Lägga till referenser tillgång till ett bibliotek i V…
    Copyright © Dator Kunskap http://www.dator.xyz