據我所知,del a
和del(a)
似乎都有相同的效果。如果是這樣的話,爲什麼Python允許del
作爲語句和函數存在?Python:「del a」和「del(a)」之間是否有區別?
9
A
回答
12
del
總是一個聲明。使用括號並不意味着你正在進行函數調用,但是你正在對錶達式進行分組。 (1)
與1
相同。
+0
很明顯,「(a)」和「a」也是一樣的。參考OP的expample。 –
+0
@MarkusMeskanen當然,謝謝! – cdonts
0
感謝@Juhana的評論和@cdonts的回答。顯然這裏的括號不代表函數調用。這裏是另一個例子:
In [40]: a=b=c=1
In [41]: del[a,(b,c)]
In [42]: b
Traceback (most recent call last):
File "<ipython-input-42-60b725f10c9c>", line 1, in <module>
b
NameError: name 'b' is not defined
相關問題
- 1. 當我想清空一個名爲python的列表時,del a [:]和a = []之間的區別是什麼?
- 2. a + = b和a = + b之間的區別是什麼,a ++和++ a?
- 3. String [] a和String之間的區別... a
- 4. [:] = b和a = b [:]之間的區別? (Python)
- 5. a = a + b和a + = b之間的區別是什麼?
- 6. Python - 「a」和「a」的區別?
- 7. A * pA = new A之間的區別;和A * pA = new A();
- 8. A a有什麼區別?和A a();?
- 9. java中a + = 10和a = a + 10之間的區別?
- 10. ES6對象方法分配之間的區別:a,'a'和['a']?
- 11. '(int)a','a as int'和C#中的Convert.ToInt32(a)之間的區別
- 12. a = a ||之間的區別b和a || = B
- 13. ||之間的區別a = b和a = a || b在紅寶石?
- 14. * a = b和a =&b之間的區別是什麼?
- 15. 聲明「MyStuct a();」之間的區別是什麼?和「MyStruct a」?
- 16. a [:] = b和a = b之間的區別是什麼?
- 17. if($ a)和if($ a == 1)之間的區別是什麼?
- 18. C中*(a [1])和*(* a + 1)之間的區別是什麼?
- 19. a + b和.__之間的區別__(b)
- 20. 列表(a)和[a]之間有什麼區別?
- 21. a // b和int(a/b)之間有什麼區別?
- 22. $ a == 2和2 == $ a之間有什麼區別?
- 23. 定義char a [5]和char(* a)[5]之間有什麼區別?
- 24. 演員之間有什麼區別:(A)x和x爲A?
- 25. a == null和a === null之間有什麼區別?
- 26. typedef char [4] A和typedef char(&A)[4]之間有什麼區別?
- 27. a,&a和* a有什麼區別?
- 28. pop()和del關鍵字的區別
- 29. 傑德的del()和flushAll()的區別
- 30. 區別:%% a和%variable%變量之間的區別是什麼?
括號並不總是表示函數。你也可以做'1+(2)',但這並不意味着'1+'是一個函數。 – JJJ
這個問題既不清楚也不太寬泛,這只是對Python括號中的括號作用的誤解,這並不是來自初學者的瘋狂。 – DSM