Stdin'den nasıl okuyorsunuz?
Bazı code golf meydan okumalarını yapmaya çalışıyorum, ancak hepsi girdinin stdin
den alınmasını gerektiriyor. Bunu Python'da nasıl elde edebilirim?
1378
3
Bazı code golf meydan okumalarını yapmaya çalışıyorum, ancak hepsi girdinin stdin
den alınmasını gerektiriyor. Bunu Python'da nasıl elde edebilirim?
fileinput`]1 modülünü kullanabilirsiniz:
fileinput
komut satırı argümanlarında verilen dosya adları olarak belirtilen girdideki tüm satırları veya herhangi bir argüman sağlanmamışsa standart girdiyi döngüye sokacaktır.Not:
line
sonda bir satırbaşı içerecektir; bunu kaldırmak içinline.rstrip()
kullanınBunu yapmanın birkaç yolu var.
sys.stdin
, her şeyi okumak istiyorsanızread
veyareadlines
fonksiyonlarını çağırabileceğiniz dosya benzeri bir nesnedir veya her şeyi okumak ve otomatik olarak yeni satırla bölmek istersiniz. (Bunun çalışması içinimport sys
yapmanız gerekir).Eğer kullanıcıdan girdi istemek istiyorsanız, Python 2.X'de
raw_input
, Python 3'te ise sadeceinput
kullanabilirsiniz.Aslında sadece komut satırı seçeneklerini okumak istiyorsanız, bunlara sys.argv listesi aracılığıyla erişebilirsiniz.
Muhtemelen Python'da I/O hakkındaki bu Vikikitap makalesini de faydalı bir referans olarak bulacaksınız.
İşte Python Öğrenmek'den:
Unix üzerinde, aşağıdaki gibi bir şey yaparak test edebilirsiniz:
Windows veya DOS'ta yapardınız: