Grundläggande Aritmetik och Operatorprioritet
Du kommer att använda aritmetiska operatorer kontinuerligt i Python. Titta på de vanligaste och hur prioritet avgör utvärderingsordningen.
Huvudsakliga operationer
12345678a = 10 b = 3 print(a + b) # Addition print(a - b) # Subtraction print(a * b) # Multiplication print(a / b) # Division print(a ** b) # Exponentiation
Operatorernas prioritet
När flera operatorer förekommer utvärderar Python dem i denna ordning (högst → lägst bland aritmetiska):
**;- Unär
+och-(tecken); *,/;+,-.
Parenteser har alltid företräde och gör avsikten tydlig. Exponentiering ** är högerassociativ.
123456789print(2 + 3 * 4) # 14 (multiplication before addition) print((2 + 3) * 4) # 20 (parentheses change the order) # Exponentiation binds tighter than unary minus print(-3 ** 2) # -9 (equivalent to -(3 ** 2)) print((-3) ** 2) # 9 # Right-associative exponentiation print(2 ** 3 ** 2) # 512 (2 ** (3 ** 2))
- Föredra parenteser i allt som inte är trivialt, läsbarhet > smarthet.
- Kom ihåg att
/alltid ger ett flyttal (även om det är delbart).
1. Vilket värde kommer denna kod att skriva ut?
2. Vilket uttryck utvärderas till 64?
3. Vilket värde kommer denna kod att skriva ut?
Tack för dina kommentarer!
Fråga AI
Fråga AI
Fråga vad du vill eller prova någon av de föreslagna frågorna för att starta vårt samtal
Can you explain what right-associative means for exponentiation?
Can you give more examples of operator precedence in Python?
What happens if I divide by zero in Python?
Awesome!
Completion rate improved to 3.45
Grundläggande Aritmetik och Operatorprioritet
Svep för att visa menyn
Du kommer att använda aritmetiska operatorer kontinuerligt i Python. Titta på de vanligaste och hur prioritet avgör utvärderingsordningen.
Huvudsakliga operationer
12345678a = 10 b = 3 print(a + b) # Addition print(a - b) # Subtraction print(a * b) # Multiplication print(a / b) # Division print(a ** b) # Exponentiation
Operatorernas prioritet
När flera operatorer förekommer utvärderar Python dem i denna ordning (högst → lägst bland aritmetiska):
**;- Unär
+och-(tecken); *,/;+,-.
Parenteser har alltid företräde och gör avsikten tydlig. Exponentiering ** är högerassociativ.
123456789print(2 + 3 * 4) # 14 (multiplication before addition) print((2 + 3) * 4) # 20 (parentheses change the order) # Exponentiation binds tighter than unary minus print(-3 ** 2) # -9 (equivalent to -(3 ** 2)) print((-3) ** 2) # 9 # Right-associative exponentiation print(2 ** 3 ** 2) # 512 (2 ** (3 ** 2))
- Föredra parenteser i allt som inte är trivialt, läsbarhet > smarthet.
- Kom ihåg att
/alltid ger ett flyttal (även om det är delbart).
1. Vilket värde kommer denna kod att skriva ut?
2. Vilket uttryck utvärderas till 64?
3. Vilket värde kommer denna kod att skriva ut?
Tack för dina kommentarer!