Đi đến phần nội dung

Kiel savi program-kodojn en Terminal (Fedora) ?

viết bởi Demian, Ngày 21 tháng 4 năm 2012

Tin nhắn: 15

Nội dung: Esperanto

Demian (Xem thông tin cá nhân) 18:09:05 Ngày 21 tháng 4 năm 2012

Spektante lecionojn je YouTube por komencantoj en la mondo de programado, mi inspiriĝis kaj kreis etan programon.

>>> def func():
... x = int(input("Age: "))
... print(x + 2)
...

>>> func()

Nu, la prolemo estas ke kvankam mi nun komencas lerni kiel krei simplajn kaj etaj programojn en Terminal, mi ne scias kiel savi ilin.

Ĉu oni povas helpi?

Mi uzas Fedora 16 kaj tajpas "python"-on en Terminal por verki programojn. La apriora versio estas Python 2.7 en la mastruma sistemo.

Dankon!

marcuscf (Xem thông tin cá nhân) 21:43:39 Ngày 21 tháng 4 năm 2012

Tio estas pli facila ol vi supozas. Simple skribu la samajn komandojn en teksta dosiero, per iu ajn redaktilo. Estus pli bone se vi uzos redaktilon por programistoj, ĉar vi vidos la specialajn vortojn alikolore. Ne uzu formatojn kiel tiujn de LibreOffice, uzu simplan tekston kiel tiun de gedit, kate, nano, vim, emacs, la Python-a IDLE, ktp.

Pro tio ke vi lernas Python, vi probable volos konservi viajn programojn kun la finaĵo “.py”, sed tio ne estas deviga afero; kaj vi ankaŭ probable volos/bezonos meti sur la unuaj linioj de via dosiero unu el la sekvaj ekzemploj (vi povas adapti ilin)

(ekzemplo 1)
#!/usr/bin/python
# -*- coding: utf-8 -*-

(ekzemplo 2)
#!/usr/bin/python
# vim: set fileencoding=utf-8

Tiuj linioj aspektas kiel komentoj de la programlingvo Python, sed ili havas specialajn funkciojn. La unua linio estas la loko de via Python-a interpretilo, kaj la dua linio indikas la signan enkodigon de via dosiero (latin-1, utf-8, ktp.). Uzu la funkciojn de via elektita redaktilo por certigi ke la signa enkodigo de la dosiero estas la sama kiunn vi tajpis en ĝi. Tio estas necesa nur se vi volas uzi ne-anglajn literojn (á, ĉ, ktp.) en la dosiero.

Por lanĉi vian programon (supozu ke ĝi estas nomata prog.py), simple tajpu ./prog.py se ĝi enhavas la magian linion kun #!python prog.py se ĝi ne enhavas tiun linion.

Post tiom da klarigoj, ne forgesu la bazan aferon: sufiĉas tajpi en redaktilo kaj konservi (savi) la dosieron! ridulo.gif Ĉio alia estas nedeviga.

Demian (Xem thông tin cá nhân) 04:29:26 Ngày 22 tháng 4 năm 2012

marcuscf:...kaj vi ankaŭ probable volos/bezonos meti sur la unuaj linioj de via dosiero unu el la sekvaj ekzemploj (vi povas adapti ilin)

(ekzemplo 1)
#!/usr/bin/python
# -*- coding: utf-8 -*-

(ekzemplo 2)
#!/usr/bin/python
# vim: set fileencoding=utf-8
Ĉu mi ŝanĝu la nomon de la dosiero, kie troviĝas Python-fajloj?

marcuscf: La unua linio estas la loko de via Python-a interpretilo, kaj la dua linio indikas la signan enkodigon de via dosiero (latin-1, utf-8, ktp.).
Kio estas Python-tradukilo?

marcuscf:Por lanĉi vian programon (supozu ke ĝi estas nomata prog.py), simple tajpu ./prog.py se ĝi enhavas la magian linion kun #!python prog.py...
Por lanĉi Python-programon, mi uzas Terminal-on. En la Terminal-o, mi tajpas:

python /home/demian/Documents/Zpo.py (Zpo.py = nomo de la fajlo)

Ĉu tiu estas bone?

Kaj mi uzas Gedit-on por tajpi. Ĝi montras apartajn kolorojn. Ekzemple, input estas griza kaj ktp.

===

Fine pardonu min se mi demandas al vi stultaj demandoj.

marcuscf (Xem thông tin cá nhân) 05:28:26 Ngày 22 tháng 4 năm 2012

Demian:
Ĉu mi ŝanĝu la nomon de la dosiero, kie troviĝas Python-fajloj?
Mi ne bone komprenis vian demandon, sed mi kredas ke la respondo estas "ne". Vi ne bezonas ŝanĝi la nomon de iu ajn ekzistanta dosiero. Vi nur bezonas elekti nomojn por la dosieroj kiujn vi kreos.

Demian:
Kio estas Python-tradukilo?
La programo nomata python, kiun vi jam uzas. Vi povas trovi ĝian lokon per:
$ which python
Mia sistemo respondas:
/usr/bin/python

Demian:
Por lanĉi Python-programon, mi uzas Terminal-on. En la Terminal-o, mi tajpas:

python /home/demian/Documents/Zpo.py (Zpo.py = nomo de la fajlo)

Ĉu tiu estas bone?
Tute bone. Sed ne diru "fajlo", tio estas tute alia afero en Esperanto. Diru "dosiero".

Demian (Xem thông tin cá nhân) 08:34:39 Ngày 22 tháng 4 năm 2012

marcuscf:Mi ne bone komprenis vian demandon, sed mi kredas ke la respondo estas "ne". Vi ne bezonas ŝanĝi la nomon de iu ajn ekzistanta dosiero. Vi nur bezonas elekti nomojn por la dosieroj kiujn vi kreos.
Ankaŭ mi ne komprenas!

marcuscf:La programo nomata python, kiun vi jam uzas. Vi povas trovi ĝian lokon per:
$ which python
Mia sistemo respondas:
/usr/bin/python
Mia sistemo respondas same.

marcuscf:Tute bone. Sed ne diru "fajlo", tio estas tute alia afero en Esperanto. Diru "dosiero".
Dankon! Mi ne faros la saman eraron ree.

Hyperboreus (Xem thông tin cá nhân) 23:22:28 Ngày 22 tháng 4 năm 2012

marcuscf:
Por lanĉi vian programon (supozu ke ĝi estas nomata prog.py), simple tajpu ./prog.py se ĝi enhavas la magian linion kun #!
Ĉi tio funkcias nur, kiam (A) vi rajtas ekzekuti la dosieron "prog.py", kaj (B) vi estas en la terminalo en la dosierujo kie troviĝas "prog.py".

Por doni al vi mem la rajton ekzekuti dosieron, uzu "chmod". Ekzemple:

$ chmod +x prog.py
$ ./prog.py

Se via terminalo estas en alia dosierujo, vi devas indiki la lokon de la dosiero (absolute aŭ relative).

Se vi anstataŭigas "#!/usr/bin/python" kun "#!/usr/bin/env python", do via programo ankaŭ povos esti ekzekutata en sistemoj kie python (aŭ la ligilo al ĝi) ne estas en /usr/bin/.

Demian (Xem thông tin cá nhân) 09:51:17 Ngày 23 tháng 4 năm 2012

Hodiaŭ estas la tria aŭ la kvara tago de la lernado kaj mi jam verkis miajn unuajn programojn en Python!

Vidu! Tiun ĉi programon mi kreis por mia juna fratino:


x = input()
print("Hi! How are you? ")
y = input()
print("I am confused. Can you help me solve a problem! ")
z = input()
print("Thank you!")
guess = int(input("The problem is mathematical. Can you guess a number between 1 and 10: " ))
if guess == 5:
print("Congrats! You hit it on the mark!")
elif guess > 5:
print("Naha! The number is smaller.")
elif guess < 5:
print("Naha! The number is larger.")


Kaj tiun ĉi mi verkis por mia juna frato. Li havas ekzamenon hodiaŭ:


x = input("Hi! I'm Chetan's computer. What is your name? ")
print(x + "! That's a beautiful name. " )
y = input("So! Dear " + x + "! How old are you? ")
print(y + " years! That means you are an energetic young man! ")
z = input("I have heard you have an exam today. What subject is it? ")
print(z + "! Now that's an interesting subject! ")
p = input("Are you prepared for the " + z + " exam? ")
if p == "Yes":
print("Now that sounds good! You will make your parents proud! ")
if p != "Yes":
print("I apologise! There is nothing I can do except wishing you a good luck! ")

Ĉu vi volus interŝanĝi iu ajn vian programon?

Demian (Xem thông tin cá nhân) 09:52:30 Ngày 23 tháng 4 năm 2012

Hodiaŭ estas la tria aŭ la kvara tago de la lernado kaj mi jam verkis miajn unuajn programojn en Python!

Vidu! Tiun ĉi programon mi kreis por mia juna fratino:


x = input()
print("Hi! How are you? " )
y = input()
print("I am confused. Can you help me solve a problem! " )
z = input()
print("Thank you!" )
guess = int(input("The problem is mathematical. Can you guess a number between 1 and 10: " ))
if guess == 5:
print("Congrats! You hit it on the mark!" )
elif guess > 5:
print("Naha! The number is smaller." )
elif guess < 5:
print("Naha! The number is larger." )


Kaj tiun ĉi mi verkis por mia juna frato. Li havas ekzamenon hodiaŭ:


x = input("Hi! I'm Chetan's computer. What is your name? " )
print(x + "! That's a beautiful name. " )
y = input("So! Dear " + x + "! How old are you? " )
print(y + " years! That means you are an energetic young man! " )
z = input("I have heard you have an exam today. What subject is it? " )
print(z + "! Now that's an interesting subject! " )
p = input("Are you prepared for the " + z + " exam? " )
if p == "Yes":
print("Now that sounds good! You will make your parents proud! " )
if p != "Yes":
print("I apologise! There is nothing I can do except wishing you a good luck! " )

Ĉu vi volus interŝanĝi iu ajn vian programon?

Lom (Xem thông tin cá nhân) 12:18:18 Ngày 23 tháng 4 năm 2012

Vi povus ankaŭ uzi "else" je la fino:
if p == "Yes":
__print("Now that sounds good! You will make your parents proud! " )
else:
__print("I apologise! There is nothing I can do except wishing you a good luck! " )
(Estas ege bedaŭrinda ke ne ekzistas ilon por montri kodtekstojn en tiu forumo. malgajo.gif
http://programistoj.net/forumo/ estus pli bona loko, kvankam certe multe malpli aktiva.)

Hyperboreus (Xem thông tin cá nhân) 19:15:49 Ngày 23 tháng 4 năm 2012

Forigite

Quay lại