Groups | Search | Server Info | Keyboard shortcuts | Login | Register [http] [https] [nntp] [nntps]
Groups > de.comp.lang.python > #4821
| 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> |
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 | Next — Previous in thread | Find similar
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