@@@ novinky | .py.
Ukázka využití jednoduchého několikařádkového programu "dir.py" v jazyku Python
v kombinaci se skripty CMD Windows, k vytvoření souhrnného výpisu "data.txt".
<<< skripty CMD Windows
Výsledný výpis "data.txt":
-------------------------------------------------- __doku.txt
1
Výpis obsahu souborů ve složce
2
I hlavní řídící skript _dir.cmd
I skript pro výpis jednoho souboru vypis.cmd *)
I program Python dir.py
W seznam souborů ve složce dir.txt
W pracovní skript dir.cmd
O výsledný výpis data.txt *)
3
příkazy CMD Windows
interperpret Python windows\py.exe
editor Windows
/ poznámkový blok notepad.exe
/ WordPad wordpad.exe
4
- standardními příkazy CMD Windows je vytvořen seznam "dir.txt"
- program "dir.py" ze seznamu vytvoří pracovní skript "dir.cmd"
- pracovní skript opakovaně volá "vypis.cmd"
- výsledek "data.txt" je zobrazen pomocí standardního editoru
*) ve skriptu "vypis.cmd" je nutno potlačit výpis "data.txt",
protože v době, kdy by byl vypisován ještě není úplný
5
- takto lze zpracovat jen soubory formátu "prostý text"
- jména souborů nesmí obsahovat mezery, ani diakritiku (zkreslí se)
- řídící skript řeší i kontrolu (pause) a prevenci omylu (del ...)
-------------------------------------------------- _dir.cmd
@echo off
echo. > data.txt
dir *.cmd/on/b > pom.txt
dir *.py/on/b >> pom.txt
dir *.txt/on/b >> pom.txt
sort pom.txt /o dir.txt
if exist dir.cmd del dir.cmd
c:\windows\py.exe dir.py %*
call dir.cmd
pause
rem notepad.exe data.txt
"c:\program files\windows nt\accessories\wordpad.exe" data.txt
-------------------------------------------------- dir.cmd
call vypis.cmd __doku.txt
call vypis.cmd _dir.cmd
call vypis.cmd data.txt
call vypis.cmd dir.cmd
call vypis.cmd dir.py
call vypis.cmd dir.txt
call vypis.cmd pom.txt
call vypis.cmd vypis.cmd
-------------------------------------------------- dir.py
# vytvoreni skriptu "dir.cmd"
print("----- dir.py")
sb1 = "dir.txt"
sb2 = "dir.cmd"
vystup = open(sb2, mode='w')
with open(sb1) as vstup:
for radek in vstup:
vystup.write("call vypis.cmd "+radek)
vystup.close()
print("o.k.")
-------------------------------------------------- dir.txt
__doku.txt
_dir.cmd
data.txt
dir.cmd
dir.py
dir.txt
pom.txt
vypis.cmd
-------------------------------------------------- pom.txt
_dir.cmd
dir.cmd
vypis.cmd
dir.py
__doku.txt
data.txt
dir.txt
pom.txt
-------------------------------------------------- vypis.cmd
if "%1"=="data.txt" goto E
echo -------------------------------------------------- %1 >> data.txt
type %1 >> data.txt
echo. >> data.txt
:E
Modřice 5. ledna 2016 - Vlastimil Čevela
www.tutorialspoint.com/execute_python3_online
a=input("1 - hhmmvvss:")
h1=int(a[0:2])
m1=int(a[2:4])
v1=int(a[4:6])
s1=int(a[6:8])
print(h1, m1, v1, s1)
a=input("2 - hhmmvvss:")
h2=int(a[0:2])
m2=int(a[2:4])
v2=int(a[4:6])
s2=int(a[6:8])
print(h2, m2, v2, s2)
print ("rozdil casu ???")
- - - .py.
www.tutorialspoint.com/execute_python3_online
print ("-----") # znakovy textovy retezec neformatovany - "string"
a = "ahoj franto"
b = "dobry den"
# 0....*....1....*....2....*....3....*....4....*....5....*....6
c = 'zatim se nezabyvame cestinou, texty piseme bez diakritiky'
print ("texty:", a, b, c)
print ("texty:" "\n", a, "\n", b, "\n", c)
print ("\x41\x42\x20\x31")
texty: ahoj franto dobry den zatim se nezabyvame cestinou, texty piseme bez diakritiky
texty:
ahoj franto
dobry den
zatim se nezabyvame cestinou, texty piseme bez diakritiky
AB 1
print ("-----") # vykrajovani retezce - "slicing the string"
print (c[:4])
print (c[4:])
print (c[4])
print (c[4:-2])
print (c[4:11])
zati
m se nezabyvame cestinou, texty piseme bez diakritiky
m
m se nezabyvame cestinou, texty piseme bez diakriti
m se ne
print ("-----") # formatovany, dle potreby viceradkovy retezec
blok = """
libovolne formatovane povidani
na libovolnem poctu radku
pouzitelne napr. jako menu
"""
print (blok)
libovolne formatovane povidani
na libovolnem poctu radku
pouzitelne napr. jako menu
print ("-----") # retezce je mozno scitat, nasobit a spocitat delku "len(str)"
str = a+b+c
print (str)
print (("ahoj"*3)+" - "+("ahoj "*5))
print (len(a), len(b), len(c), len(str))
ahoj frantodobry denzatim se nezabyvame cestinou, texty piseme bez diakritiky
ahojahojahoj - ahoj ahoj ahoj ahoj ahoj
11 9 57 77
print ("-----") # "str.join(sequence)" - spojovani a vkladani oddelovacu
a = "ahoj franto"
b = "123"
c = "dobry den"
print (a, b, c)
lst = [a, b, c]
print("".join(lst))
print(" - ".join(lst))
ahoj franto 123 dobry den
ahoj franto123dobry den
ahoj franto - 123 - dobry den
print ("-----") # znakovy textovy retezec neformatovany
total = 10 + 20 + 30
print ("vysledek", total)
total = 10 + \
520 + \
30
print ("vysledek", total)
print ("ahoj"); print (total)
vysledek 60
vysledek 560
ahoj
560