Lebih
Bagaimana saya bisa mewakili jumlah tak terbatas di Python?
Bagaimana saya bisa mewakili jumlah tak terbatas di python? Tidak peduli di mana nomor yang anda masukkan dalam program ini, tidak ada nomor yang harus lebih besar dari ini representasi dari infinity.
508
9
Di Python, anda dapat melakukan:
Di Python 3.5, yang dapat anda lakukan:
Dan kemudian:
Akan selalu benar. Kecuali tentu saja, seperti yang ditunjukkan, x juga infinity atau "nan" ("bukan nomor").
Selain Itu (Python 2.x SAJA), dalam perbandingan untuk
Ellipsis
,float(inf)
lebih rendah, e.g:akan kembali benar.
Sejak Python 3.5 anda dapat menggunakan matematika.inf`:
Saya don't tahu persis apa yang anda lakukan, tapi
float("inf")
memberikan pelampung Infinity, yang lebih besar dari nomor lain.Tidak ada yang tampaknya telah disebutkan tentang negatif infinity secara eksplisit, jadi saya pikir saya harus menambahkannya.
Untuk infinity positif (hanya untuk kepentingan kelengkapan):
Untuk negatif infinity:
Lain, kurang nyaman, cara untuk melakukannya adalah dengan menggunakan
Decimal
kelas:Ada infinity di NumPy perpustakaan:
dari numpy impor inf
. Untuk mendapatkan negatif infinity satu hanya dapat menulis-inf
.Di python2.x ada hack kotor yang melayani tujuan ini (tidak PERNAH menggunakannya kecuali benar-benar diperlukan):
Dengan demikian centang
i < ''
memegangBenar
untuk setiap bilangan bulataku
.Itu telah cukup usang di python3. Sekarang perbandingan tersebut berakhir dengan
Juga jika anda menggunakan SymPy anda dapat menggunakan
sympy.oo
``pertama dari semua jenis float('inf') adalah float meskipun hal ini dapat digunakan untuk perbandingan tujuan tetapi sangat lambat untuk membandingkan terhadap hal itu. Jadi jika anda membandingkan daftar besar terhadap jumlah float('inf') maka berhati-hatilah untuk memilih itu. Saya tidak yakin tentang kinerja "matematika.inf".