Pomnóż ciąg przez numer w języku JavaScript

| | | | | | | | | | | | | | | | | | | | |

W Pythonie możesz pomnożyć dwie liczby . Możesz także pomnożyć liczbę przez łańcuch. Zwraca sekwencję ciągu, która powtarza się określoną liczbę razy.

Jeśli spróbujesz pomnożyć jeden ciąg przez inny, napotkasz błąd „ Błąd typu: nie można pomnożyć sekwencji dla nie -int błędu typu „str”.

W tym przewodniku wyjaśnimy, co oznacza ten błąd i gdzie możesz go napotkać w swoim kodzie. Spójrzmy na przykład tego błędu, aby pomóc Ci zrozumieć, jak go naprawić.

Błąd typu: Nie można pomnożyć sekwencji przez nie-int typu „str”

Ciągi są rodzajem sekwencji . Dzieje się tak, ponieważ zawierają znaki, nad którymi Python może iterować. Inne typy sekwencji obejmują krotki, słowniki i listy.

Użyj operatora mnożenia (*), aby utworzyć ciąg, który powtarza zawartość ciągu. Rozważmy następujący kod:

Ten kod zwraca: "Ciasta! Ciasta! ". Operator mnożenia powoduje, że nasz łańcuch powtarza się dwukrotnie.

Nie można użyć operatora mnożenia do pomnożenia łańcucha przez łańcuch. Liczby całkowite i liczby zmiennoprzecinkowe są jedynymi wartościami, które można pomnożyć przez wartości tego samego typu danych. Python nie ma możliwości zinterpretowania mnożenia dwóch ciągów znaków.

Przykładowy scenariusz

Stwórzmy program, który obliczy, ile pieniędzy zarobiła restauracja z bułeczek z dżemem w czwartkowe popołudnie.

Na początek musimy ustawić cena bułeczki z dżemem. Prosimy również o poinformowanie nas, ile bułeczek z dżemem sprzedałeś w ostatnim dniu pracy, korzystając z „ input() :

Następnie pomnóżmy te dwie wartości ‚Ę‚Ęã razem. To powie nam, ile pieniędzy zarobiono na bułeczkach z dżemem w danym dniu:

Teraz, gdy wiemy już, ile wygrały bułeczki, napiszmy oświadczenie print(), które poinformuje użytkownika o wyniku naszych obliczeń:

Metoda format () pozwala nam dodać wartość „earned_from_scones” w miejscu, w którym nasze nawiasy klamrowe ({}) pojawiają się w naszym ciągu.

Musimy również obliczyć, jaki zysk jest uzyskiwany z każdej muffinki. zarabiamy 25 centów na każdej bułce. Aby obliczyć zysk, używamy tego kodu:

Ten kod oblicza zysk z każdej babeczki, a następnie wyświetla wartość do konsoli. Uruchommy nasz kod i zobaczmy, czy działa:

Nasz kod zwraca błąd.

Przeanalizujmy wiersz kodu naszego błędu:

Chociaż ten kod wygląda poprawnie, jest problem: próbujemy pomnożyć dwie wartości ciągu ‚Ę‚‚Ęã razem. Przechowujemy „jam_scone” jako ciąg. Metoda input() zwraca ciąg znaków, co oznacza, że sold () ma wartość ciągu.

Aby rozwiązać ten problem, upewnij się, że " jam_scone " i " sprzedane " są zmiennoprzecinkowe . To pozwala nam wykonać operację matematyczną na tych wartościach.

Następnie zmieńmy sposób, w jaki deklarujemy wartości „Ęã” tych zmiennych:

Wartość " jam_scone " nie jest już w cudzysłowie . To pokazuje, że zmieniliśmy "jam_scone" z łańcucha na pływak. Użyliśmy również metody float() , aby przekonwertować wartość „sprzedane” na liczbę zmiennoprzecinkową.

Uruchom nasz kod i zobacz, co się stanie:

Nasz kod działa poprawnie. Najpierw nasz kod prosi użytkownika o podanie, ile bułeczek zostało sprzedanych w konsoli. Następnie nasz program oblicza, ile pieniędzy zarobił sklep sprzedając bułeczki. Na koniec nasz program oblicza zyski generowane przez sprzedaż bułeczek.

Wniosek

Błąd " TypeError: nie można pomnożyć sekwencji przez niecałkowitą liczbę typu `str ` `występuje, jeśli spróbujesz pomnożyć wartości dwóch ciągów. Możesz rozwiązać ten problem, upewniając się, że pomnożyłeś dwie wartości liczbowe razem lub po prostu pomnożyłeś ciąg przez liczbę całkowitą.

Jesteś teraz gotowy do rozwiązania tego błędu jako pythonista!