Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]


Groups > de.comp.lang.python > #4821

Re: [Python-de] Frage zu IDLE

From Hermann Riemann <nospam.ng@hermann-riemann.de>
Newsgroups de.comp.lang.python
Subject Re: [Python-de] Frage zu IDLE
Date 2017-06-24 05:45 +0200
Message-ID <er65icF7nmtU1@mid.individual.net> (permalink)
References <og2884$o6v$1@news.albasani.net> <eoocrrFb38iU1@mid.individual.net> <6d376b0e-9139-92a3-7c34-2e6e9a2a22ed@sschwarzer.net> <mailman.2.1495742303.13056.python-de@python.org>

Show all headers | View raw


Am 25.05.2017 um 21:58 schrieb Stefan Schwarzer:
> On 2017-05-25 17:51, Hermann Riemann wrote:> Die ersten beiden Zeilen sind dann
>>
>> #!/usr/bin/python3
>>
>> # -*- coding: utf-8 -*-
>> wobei ich vermute, das die 2.Zeile nicht mehr notwendig ist.
> genau:
> 
> https://docs.python.org/3/whatsnew/3.0.html
> 
> ...
> PEP 3120: The default source encoding is now UTF-8.
> ...

Danke, ich habe auf aktuellen Rechner diese Zeilen entfernt mit:


#!/usr/bin/python3

import os,sys

def no_utf(name):
    if len(name)<5: return
    n=name.rfind('.')
    if n<0 or name[n+1:]!='py': return
    try:
       f=open(name)
       l=f.readlines()
       f.close()
    except:
       print("cannot read",name)
       return
    if len(l)<2: return
    line1=l[0].rstrip()
    line2=l[1].rstrip()
    if line1!="#!/usr/bin/python3": return
    f=open(name,"w")
    for i,line in enumerate(l):
       if i==1 and line.rstrip()=="# -*- coding: utf-8 -*-": continue
       f.write("{}\n".format(line.rstrip()))
    f.close()

def was_denn(name):
    if  os.path.islink(name):
        name1=os.path.realpath(name)
        if os.access(name,os.F_OK):
           name=name1
        else:
           print("{} für {} existiert nicht".format(name1,name))
           return
    if  os.path.isdir(name):
       for inf3 in os.walk(name):
          ordner_name=inf3[0]
          for datei_name in inf3[2]: 
 

             no_utf("{}/{}".format(ordner_name,datei_name)) 
 

    else: no_utf(name) 
 

 
 

for arg in sys.argv[1:]: 
 

     if os.access(arg,os.F_OK): 
 

        was_denn(arg) 
 

        continue 
 

     print(arg+" gibt es nicht")

Hermann
    der nicht nur zur Python einrücken manchmal folgendes Programm
    verwendet:

#!/usr/bin/python3 
 

 
 

import os, sys, string 
 

 
 

filenames=[] 
 

 
 

def pyr(filename): 
 

    if not os.access(filename,os.F_OK): 
 

       print(filename,"existiert nicht") 
 

       return 
 

    f=open(filename) 
 

    l=f.readlines() 
 

    f.close() 
 

    for i,t in enumerate(l): 
 

       l[i]=t.rstrip() 
 

    while len(l)>0 and len(l[-1])==0: 
 

       l.pop() 
 

    os.system("cp -p {} {}~".format(filename,filename)) 
 

    first_blanks=level=0 
 

    f=open(filename,"w") 
 

    for z in l: 
 

       if len(z)<3 or z[:2]!="#$": 
 

          if   first_blanks==0: 
 

             f.write(z) 
 

          elif first_blanks >0: 
 

             f.write(first_blanks*' ') 
 

             f.write(z) 
 

          elif len(z) < first_blanks: 
 

             print(-first_blanks,z) 
 

             f.write(z) 
 

          else: 
 

             f.write(z[-first_blanks:]) 
 

          f.write('\n') 
 

          continue 
 

       c=z[2] 
 

       if c=='<': 
 

          level-=1 
 

       elif c=='>': 
 

          level+=1 
 

       elif c==')': 
 

          level=0 
 

       first_blanks=3*level 
 

    f.close() 
 

 
 

for arg in sys.argv[1:]: 
 

    if arg[0]=='-': pass 
 

    filenames.append(arg) 
 

 
 

for filename in filenames: 
 

    pyr(filename)



-- 
http://www.hermann-riemann.de

Back to de.comp.lang.python | Previous | NextPrevious in thread | Find similar


Thread

Frage zu IDLE Peter Necas <familie.necas@aon.at> - 2017-05-23 23:06 +0200
  Re: [Python-de] Frage zu IDLE "Dr. Volker Jaenisch" <volker.jaenisch@inqbus.de> - 2017-05-24 00:21 +0200
  Re: [Python-de] Frage zu IDLE Peter Otten <__peter__@web.de> - 2017-05-24 15:55 +0200
  Re: [Python-de] Frage zu IDLE "Sven R. Kunze" <srkunze@mail.de> - 2017-05-25 12:51 +0200
  Re: Frage zu IDLE Hermann Riemann <nospam.ng@hermann-riemann.de> - 2017-05-25 17:51 +0200
    Re: Frage zu IDLE Peter Necas <familie.necas@aon.at> - 2017-05-25 21:01 +0200
    Re: [Python-de] Frage zu IDLE Stefan Schwarzer <sschwarzer@sschwarzer.net> - 2017-05-25 21:58 +0200
      Re: [Python-de] Frage zu IDLE Hermann Riemann <nospam.ng@hermann-riemann.de> - 2017-06-24 05:45 +0200

csiph-web