2009-08-19 18 views
11

Jest na to prosta odpowiedź, ale nie wiem, jak to zrobić z moich wyszukiwań.Python PEP8 drukowanie owiniętych ciągów bez wcięcia

Używam PEP8 w moim kodzie Pythona i obecnie używam OptionParser dla skryptu, który piszę. Aby zapobiec przekroczeniu linii o 80, używam odwrotnego ukośnika w razie potrzeby.

Na przykład:

if __name__=='__main__': 
    usage = '%prog [options]\nWithout any options, will display 10 random \ 
    users of each type.' 
    parser = OptionParser(usage) 

To tiret po wynikach ukośnik w:

~$ ./er_usersearch -h 
Usage: er_usersearch [options] 
Without any options, will display 10 random  users of each type. 

To luka po "losowych" robaki mnie. Mógłbym:

if __name__=='__main__': 
    usage = '%prog [options]\nWithout any options, will display 10 random \ 
users of each type.' 
    parser = OptionParser(usage) 

Ale to budzi mnie tak samo. To wydaje się głupie:

if __name__=='__main__': 
    usage = ''.join(['%prog [options]\nWithout any options, will display', 
        ' 10 random users of each type.']) 
    parser = OptionParser(usage) 

Musi istnieć lepszy sposób?

Odpowiedz

1

spróbuj tego:

if __name__=='__main__': 
    usage = '%prog [options]\nWithout any options, will display 10 random ' \ 
    'users of each type.' 
    parser = OptionParser(usage) 
+0

Ukośnik nie jest konieczne, aby połączyć ze sobą cytaty. – bobpaul

+0

tak, ale prawdopodobnie czyni to bardziej oczywistym. Nie pominęłbym tego samego. – Peter

3

to działa:

if __name__=='__main__': 
    usage = ('%prog [options]\nWithout any options, will display 10 random ' 
    'users of each type.') 
    parser = OptionParser(usage) 

Chociaż chciałbym położyć ją tak:

if __name__=='__main__': 
    usage = ('%prog [options]\n' 
      'Without any options, will display 10 random users ' 
      'of each type.') 
    parser = OptionParser(usage) 

(Więc zacznę nową linię gdy istnieje \n w łańcuchu, a także, kiedy muszę słowa owinąć kod źródłowy.)

Powiązane problemy