Recent Changes - Search:

Oktatás

* Programozás 1
  + feladatsor
  + GitHub oldal

* Szkriptnyelvek
  + feladatsor
  + quick link

Teaching

* Programming 1 (BI)
  ◇ exercises
  ◇ quick link

* Scripting Languages
  ◇ exercises
  ◇ quick link

teaching assets


Félévek

* aktuális (2023/24/2)
* archívum


Linkek

* kalendárium
   - munkaszüneti napok '20
* tételsorok
* jegyzetek
* szakdolgozat / PhD
* ösztöndíjak
* certificates
* C lang.
* C++
* C#
* Clojure
* D lang.
* Java
* Nim
* Scala


[ edit | logout ]
[ sandbox | passwd ]

Py3 /

20130919b

a-z; megfordított forráskóddal: z-a

Írjunk egy Python szkriptet, amit lefuttatva megkapjuk az angol ábécé kisbetűit a-tól z-ig.

A szkript forráskódját fordítsuk meg karakterenként. A megfordított forrás szintén egy szabályos Python szkriptet eredményezzen, melyet lefuttatva kapjuk meg az angol ábécé kisbetűit fordítva, azaz z-től a-ig.

Tipp: a python szkript nevét a python interpreternek adjuk át paraméterként, lásd a lenti futási példát.

Egy file karakterenkénti megfordításához használjuk fel az alábbi programot (reverse.py):

#!/usr/bin/env python3

import sys

def main():
    with open(sys.argv[1]) as f:
        print(f.read()[::-1])

##############################################################

if __name__ == "__main__":
    if len(sys.argv) == 1:
        print("One parameter is required.")
        sys.exit(1)
    # else
    main()

Futási példa:

$ ls -al
total 20
drwxrwxr-x 2 jabba jabba 4096 Sep 19 13:31 .
drwxrwxr-x 3 jabba jabba 4096 Sep 19 13:26 ..
-rwx------ 1 jabba jabba  124 Sep 19 13:31 a-z.py
-rwx------ 1 jabba jabba  313 Sep 19 13:22 reverse.py
$ python3 ./a-z.py 
abcdefghijklmnopqrstuvwxyz
$ ./reverse.py a-z.py >forditott.py 
$ ls -al
total 20
drwxrwxr-x 2 jabba jabba 4096 Sep 19 13:31 .
drwxrwxr-x 3 jabba jabba 4096 Sep 19 13:26 ..
-rwx------ 1 jabba jabba  124 Sep 19 13:31 a-z.py
-rw-rw-r-- 1 jabba jabba  125 Sep 19 13:31 forditott.py
-rwx------ 1 jabba jabba  313 Sep 19 13:22 reverse.py
$ python3 forditott.py 
zyxwvutsrqponmlkjihgfedcba
$

A megfordítás utáni 1 byte eltérés a méretben egy extra újsor karakter beszúrásával magyarázható.

Cloud City

  

Blogjaim, hobbi projektjeim

* The Ubuntu Incident
* Python Adventures
* @GitHub
* heroku
* extra
* haladó Python
* YouTube listák


Debrecen | la France


[ edit ]

Edit - History - Print *** Report - Recent Changes - Search
Page last modified on 2016 September 12, 13:45