Formatowanie liczb typu float

0

Witajcie,

Mam nadzieję, że dobrze zaadresowałem temat mojego wątku :)

jestem totalnie świeżakiem jeżeli chodzi o programowanie. Postanowiłem, że chciałbym spróbować się nauczyć choć trochę języka Python.
Wrzuciłem sobie zadanie, które z natury wygląda na mega proste i działa (mnożenie :) ) natomiast chciałbym wynik mnożenia przedstawić w postaci NIE 7,200.00 a 7,2 kV
Pytanie czy da się to zrobić, bo niestety szukam i szukam i nie mogę nic konkretnego znaleźć.

Kod:
print("Podaj metry domu")
metry = float(input("jaki metraz"))

energia = metry * 40

print("Wynik: {:06,.2f} kV".format(energia))

Wynik:
Podaj metry domu
jaki metraz 180
Wynik: 7,200.00 kV

Z góry dziękuję za pomoc
Bartek

0

Podziel przez 1000.

1
print("Podaj metry domu")
metry = float(input("jaki metraz"))

energia = metry * 40
formatowanie = "{:0.2f}".format(energia/1000.0).rstrip("0").replace(".", ",").rstrip(",")

print("Wynik: {0} kV".format(formatowanie))

https://ideone.com/GIC1TG

0
MexikanoS napisał(a):

Podziel przez 1000.

Dzięki za pomoc, faktycznie, jakie to było oczywiste :)

1
Spine napisał(a):
print("Podaj metry domu")
metry = float(input("jaki metraz"))

energia = metry * 40
formatowanie = "{:0.2f}".format(energia/1000.0).rstrip("0").replace(".", ",").rstrip(",")

print("Wynik: {0} kV".format(formatowanie))

https://ideone.com/GIC1TG

Wielkie dzięki Spine za pomoc!

0
kalii napisał(a):
Spine napisał(a):
print("Podaj metry domu")
metry = float(input("jaki metraz"))

energia = metry * 40
formatowanie = "{:0.2f}".format(energia/1000.0).rstrip("0").replace(".", ",").rstrip(",")

print("Wynik: {0} kV".format(formatowanie))

https://ideone.com/GIC1TG

Wielkie dzięki Spine za pomoc!


Chciałbym poprosić Cię o jeszcze jedną pomoc. Wrzuciłem kilka obliczeń ale napotkałem na 2 problemy.

  1. Na końcu gdzie jest w kodzie całkowita energia wyglada na to ze nie sumuje a dodaje wartosci obok siebie
  2. blok kodu ktory jest na samym dole z zapotrzebowaniem na energie elektryczna jak robie input i wpisuje wartosc np 4.8 nie dodaje mi rowniez w calkowita_energia

Nie moge dojsc zeby to zrobic. bede wdzieczny za pomoc
z gory dziekuje


# Zapotrzebowanie na ciepło przyjmuje się w granicach pomiędzy 40-50 W/m2
# Dla celow obliczenia przyjmujemy wartosc srednia 45. Jest to parametr izolacyjny budynku

metry_dom = float(input("\nPodaj ile metrów ma Twój dom: "))

metry_dom_energia = metry_dom * 40
formatowanie = "{:0.2f}".format(metry_dom_energia/1000.0).rstrip("0").replace(".", ",").rstrip(",")

print("Wynik: {0} kV".format(formatowanie))

print("\n\t------------- ENERGIA CIEPLNA -------------")

# W sezonie grzewczyn pompa ciepła pracuje od 1800 do 2200 godzin na potrzeby CO.
# Przyjmujemy wartość 2000 w celu uśrednienia parametrów

print("\nW sezonie grzewczym pompa ciepła pracuje od 1800 do 2200 godzin dla potrzeb CO.")
print("W celu obliczenia wartości przyjmujemy wartość uśrednioną 2000 godzin, zatem ...")

energia_cieplna = metry_dom_energia * 2000
formatowanie2 = "{:0.2f}".format(energia_cieplna/1000.0).rstrip("0").replace(".", ",").rstrip(",")

print("Wynik: {0} kV".format(formatowanie2))

#energia_cieplna_kw = energia_cieplna / 1000

print("\n\t------------- WSPÓŁCZYNNIK ... -------------")

# Sezonowy współczynnik
# Sezonowy współczynnik efektywności pompy SCOP. Dla instalacji ogrzewania podłogowego w przedziale 3,5 - 4
# Dla uśrednienia przyjmujemy wartość 4

print("\nSezonowy współczynnik efektywnosci pompy dla instalacji ogrzewania podlogowego wynosi pomiędzy 3,5 do 4")
print("Dla celów obliczenia zapotrzebowania, przymujemy uśredniony parametr 4")

sezonowy_wspolczynnik = energia_cieplna / 4
formatowanie3 = "{:0.2f}".format(sezonowy_wspolczynnik/1000.0).rstrip("0").replace(".", ",").rstrip(",")

print("Wynik: {0} kV".format(formatowanie3))

print("\n\t------------- CIEPŁA WODA -------------")

# Ciepła woda użytkowa

print("\nAby w pełni obliczyć moc paneli na cały dom, należy wziąć również pod uwagę zużycie ciepłej wody na mieszkańca")

ile_osob = int(input("\nWpisz ilu domowników zamieszkuje powyższy dom: "))
ile_wody = int(input("\nPodaj średnie zużycie wody dziennie na mieszkańca (w litrach): "))

ciepla_woda = ile_osob ile_wody 360

print("\nTwoje roczne zużycie wody na {}".format(ile_osob), "osób/osoby wynosi: {}".format(ciepla_woda), "litrów na rok")

input("\nNaciśniej Enter żeby iść dalej")

print("\n\t------------- OGRZEWANIE WODY -------------")

# Ogrzewanie wody
# Parametry są w przedziale pomiędzy 10 a 40 stopni C

print("\nPrzyjmuje się, że ogrzanie wody mieści się w parametrach pomiędzy 10 a 40 stopni C.")
print("Dla celów obliczeniowych, przyjmuje się parametr 30 stopni C")

ogrzanie_wody = ciepla_woda * (40 - 10) / 860
formatowanie4 = "{:0.2f}".format(ogrzanie_wody/1000.0).rstrip("0").replace(".", ",").rstrip(",")

print("Wynik: {0} kV".format(formatowanie4))

print("\n\t------------- WSPÓŁCZYNNIK C.W.U -------------")

# Współczynnik przy ogrzewaniu C.W.U
# Parametry są w przedziale pomiędzy 2,3 - 2,8

print("\nW celu obliczenia współczynnika C.W.U. przyjmujemy średnią wartość 2,8 (w przedziale pomiędzy 2,3 - 2,8)")

wspolczynnik_cwu = ogrzanie_wody / 2.8
formatowanie5 = "{:0.2f}".format(wspolczynnik_cwu/1000.0).rstrip("0").replace(".", ",").rstrip(",")

print("Wynik: {0} kV".format(formatowanie5))

print("\n\t------------- ZAPOTRZEBOWANIE NA ENERGIĘ ELEKTRYCZNĄ -------------")

# Zapotrzebowanie na energię elektryczną
# odczyt z rachnuków klienta

print("\nTo już ostatni krok do wyliczenia")

zapotrzebowanie = float(input("\nPodaj zużycie energii z tojego rachunku w formacie x.x: "))
formatowanie6 = "{:0.2f}".format(zapotrzebowanie).rstrip("0").replace(".", ",").rstrip(",")

print("Wynik: {0} kV".format(formatowanie6))

#input("\nNaciśniej Enter żeby iść dalej")

#print("\n\t------------- TWOJE CAŁKOWITE ZAPOTRZEBOWANIE -------------")

calkowita_energia = sezonowy_wspolczynnik + wspolczynnik_cwu + zapotrzebowanie

print("Wynik: {0} kV".format(calkowita_energia))

input("\nNaciśniej Enter, jeżeli chcesz wyjść")

0

https://stackoverflow.com/a/32093034/1387438

from si_prefix import si_format

x = 7200.0
print(f"{si_format(x)}V")
0
MarekR22 napisał(a):

https://stackoverflow.com/a/32093034/1387438

from si_prefix import si_format

x = 7200.0
print(f"{si_format(x)}V")

Dzięki za zwrócenie uwagi na priv komentarz.

1 użytkowników online, w tym zalogowanych: 0, gości: 1, botów: 0