Python'da sayıları tam sayıya çevirmek [duplicate]
Sep 21 2020
Ben nasıl olabilir Zemini merak ediyorum 1,999,999için 1,000,000ya 2,000,108hiç 2,000,000python? Kullandım math.floor()ama sadece ondalık kısmı kaldırmak için.
Yanıtlar
2 YuchenZhong Sep 21 2020 at 01:53
Bunu şöyle yap:
math.floor(num / 1000000) * 1000000
Örneğin:
>>> num=1999999
>>> math.floor(num / 1000000) * 1000000
1000000.0
>>> num=2000108
>>> math.floor(num / 1000000) * 1000000
2000000.0
1 MichaelSzczesny Sep 21 2020 at 02:03
Pozitif tamsayıyı birinci basamağa yuvarlamak için
from math import floor
def r(n):
gr = 10 ** (len(str(n))-1)
return floor(n / gr) * gr
for i in [199_999, 200_100, 2_100, 315]:
print(r(i))
Çıktı
100000
200000
2000
300
1 Federico Sep 21 2020 at 02:05
def floor_integer(num):
l = str(num)
return int(l[0]) * pow(10, len(l) - 1)
Bunun ihtiyaçlarınıza uyacağını düşünüyorum.
print(floor_integer(5))
# 5
print(floor_integer(133))
# 100
print(floor_integer(1543))
# 1000
print(floor_integer(488765))
# 400000
print(floor_integer(1999999))
# 1000000
print(floor_integer(2000108))
# 2000000
Nicole Kidman, Michael Keaton ve Val Kilmer'in Batman Olarak Paylaştığı Bu 1 Çekici Özelliğe Bayıldı
Charly Reynolds Yakın Zamandaki Vokal Kord Ameliyatını Açıkladı: 'Şarkı Söylemekte Sorun Yaşıyordum'
Kevin Jonas'ın Kızı Alena, Doğum Günü Fotoğrafında Büyümüş Görünüyor: '9 Yaşında Gerçek Hissetmiyor'