Kuinka moninkertaistaa pythonissa

Ratkaisun esikatselu: Numeerinen kertolasku Pythonissa käyttää*operaattori. Kun luet arvojainput(), muuntaa neinttaifloatMerkkijonojen toiston välttämiseksi. Taulukoissa ja matriisissa käytä numphy -funktioita elementti- ja matriisin kertomisessa.

Tärkeimmät käsitteet

Pythonin kertominen kattaa muutamia yleisiä tapauksia, joita käytät päivittäin:

  • Numerot:*moninkertaistaa kokonaisluvut ja kelluvat (esim.2 * 3 == 6).
  • Sekvenssit:*Toistaa jouset ja luettelot (esim."ha" * 3 == "hahaha").
  • Taulukot/matriisit: Käytä numphy, käytänp.multiplyElementille janp.dottai@Matriisin kertominen.
  • Käyttäjän syöttö:input()palauttaa jouset; Muunna numeroiksi ennen kertomista.

Menetelmä 1: Kerta numerot sisäänrakennetulla operaattorilla

Vaihe 1:Määritä kaksi numeroa.

a = 5
b = 3

Vaihe 2:Moninkertaisesti käyttämällä*.

product = a * b

Vaihe 3:Tulosta tulos F-merkkijonolla.

print(f"{a} * {b} = {product}")  # 5 * 3 = 15

Menetelmä 2: Kerro käyttäjän syöttöarvot oikein

Vaihe 1:Muunna syöttö numeroiksi.

price = float(input("Enter price: "))
qty = int(input("Enter quantity: "))

Vaihe 2:Kerro numeeriset arvot.

total = price * qty

Vaihe 3:Tulosta luettava viesti.

print(f"Total cost: ${total}")

Vaihe 4:Lisää virheenkäsittely virheelliselle tulolle.

try:
    n = int(input("Enter a whole number: "))
    print(f"2 * {n} = {2 * n}")
except ValueError:
    print("Please enter a valid integer.")

Miksi tällä on merkitystä: jos ohitat tulokset,"2" * 3tulla"222"(Merkkijonon toisto), ei6.

Menetelmä 3: Rakenna kertolasku (Times Table)

Vaihe 1:Lue perusnumero kokonaislukuksi.

base = int(input("Number for the table: "))

Vaihe 2:Silmukka 1 - 12.

for i in range(1, 13):
    print(f"{base} x {i} = {base * i}")

Tämä välttää yleisen virheen missänumon merkkijono ja lähdöt2 x 3 = 222.

Menetelmä 4: Toista jouset ja luettelot samalla operaattorilla

Vaihe 1:Toistaa merkkijono*.

echo = "hi"
print(echo * 3)  # hihihi

Vaihe 2:Toistaa luettelo*.

items = [1, 2]
print(items * 3)  # [1, 2, 1, 2, 1, 2]

HUOMAUTUS: Kun toistetaan muuttuvien objektien luetteloita, kaikki toistuvat viitteet osoittavat samaan sisäobjektiin.

Menetelmä 5: Kerro- ja matriisit numpulla

Vaihe 1:Asenna numphy.

# In a terminal
pip install numpy

Vaihe 2:Tuo numphy.

import numpy as np

Vaihe 3:Tee elementti viikeaan taulukkojen kertominen.

a = np.array([1, 2, 3])
b = np.array([4, 5, 6])
print(np.multiply(a, b))  # [ 4 10 18]

Vaihe 4:Kerro matriisit (pistetuote).

A = np.array([[1, 2],
              [3, 4]])
B = np.array([[5, 6],
              [7, 8]])
print(np.dot(A, B))
# [[19 22]
#  [43 50]]
# Equivalent: print(A @ B)

Elementtien moninkertaistuu vastaavat merkinnät, kun taas matriisin kertolasku soveltaa lineaarisia algebra -sääntöjä riveihin ja sarakkeisiin.

Lue myös:Käytä Pythonia tietojen analysointiin: Rakenna toistettava työnkulku

Menetelmä 6: Kerro käyttämättä*(oppimisharjoitus)

Vaihe 1:Alusta akku nollaan.

def multiply(a, b):
    total = 0

Vaihe 2:Silmukkaabs(b)kertaa.

    i = 0
    while i < abs(b):
        total += a
        i += 1

Vaihe 3:Korjaa merkki, josbon negatiivinen ja paluu.

    return total if b >= 0 else -total

print(multiply(6, -3))  # -18

Tämä malli kertolasku toistuvana lisäyksessä ja peilaa luokkahuoneen aritmeettista. Se on hitaampaa kuin käyttää*ja se tulisi varata harjoitteluun tai rajoitetuihin ympäristöihin.

Käytännön esimerkit

Käyttötapauksia, joihin osuut usein:

  • Käsikästen kokonaismäärät:total = unit_price * quantity.
  • Skaalausarvot:scaled = value * factor.
  • Teksti bannerit:print("=" * 40).
  • Tietotiede: Elementti- ja matriisituotteet ja matriisituotteet Numpy kanssa.

Yleisiä virheitä ja kuinka välttää niitä

  • Unohdetaan antaa syöttö:num = int(input(...))taifloat(...)Korjaa merkkijonon toiston kuten"2" * 3 == "222".
  • Yhdistävät jouset ja numerot suoraan: käytä F-merkkijonoja (f"{x}") tai muuntaastr().
  • Sekava elementti ja matriisin kertominen: käytänp.multiply(elementti) vs.np.dot-@(Matriisi).
  • Käyttämineneval()moninkertaistumiseen: vaarallinen ja tarpeeton; soittaaa * btai käyttäämath.proditerableille.
  • Koodin toistaminen Times -taulukoihin: Kirjoita silmukka tulostuslausekkeiden kopioinnin sijasta.

Parhaat käytännöt ja vinkit

  • Mieluummin F-kielet luettavissa olevaan ulostuloon, esim.print(f"{a} * {b} = {a * b}").
  • Monen numeron tuotteille käytäimport math; math.prod(iterable)Pythonissa 3.8+.
  • Rahaa varten, harkitsedecimal.DecimalVälttää kelluva-pisteinen pyöristyskysymykset.
  • Suorituskykyherkässä numeerisessa koodissa käytä Numpy-toimintoja Python-silmukoiden sijasta.
  • Funktionaaliseen tyyliin,from operator import mulantaa soitettavan vastaavan*.

Nopean tarkistusluettelo

  • Numerot:*.
  • Syöttö numeroon:int()-float()Ennen kertomista.
  • Jouset/luettelot:*Toistaa sisältöä.
  • Taulukot:np.multiplyelementtiä varten,np.dottai@Matriisin kertominen.
  • Välttääeval()Tuotteille.
  • Käytä silmukoita Times -taulukoihin; Älä kopioi tulostuslinjoja.

Sinulla on nyt käytännölliset mallit Pythonin lukujen, sekvenssien ja taulukkojen kertomiseksi sekä sudenkuopat, joita voidaan välttää käyttäjän syöttämisen luettaessa. Pidä tämä referenssinä ja säästät aikaa virheenkorjaus- ja muotoilun tuloksia.

Related Posts