Lebih
Gagal untuk mendapatkan data menggunakan read() dari StringIO di python
Menggunakan Python2.7 versi. Di bawah ini adalah contoh kode.
import StringIO
import sys
buff = StringIO.StringIO()
buff.write("hello")
print buff.read()
dalam program di atas, baca() mengembalikan apa-apa padaku di mana sebagai getvalue() mengembalikan saya "hello". Siapapun dapat membantu saya dalam memperbaiki masalah ini? Saya perlu membaca() karena saya berikut kode melibatkan membaca "n" byte.
64
2
Anda perlu untuk me-reset buffer posisi awal. Anda dapat melakukan ini dengan melakukan
buff.mencari(0)
.Setiap kali anda membaca atau menulis ke buffer, posisi lebih maju dengan satu. Katakanlah anda mulai dengan sebuah buffer kosong.
Buffer nilai
","
, buffer pos adalah0
. Anda melakukanbuff.write("hello")
. Jelas buffer nilai sekaranghello
. Buffer posisi, namun, sekarang5
. Ketika anda meneleponread()
, tidak ada masa lalu posisi 5 untuk baca! Sehingga ia mengembalikan string kosong.atau