[英]How do I write a Python code to check if the given sequence is a palindrome or not?
[英]Python: How to write a sequence of code?
我目前正在自學python 3,有一件事困擾着我:我的意思是我期望的一切,包括lambda。 但是,如何編寫代碼塊?
例如,如何用python(2或3)編寫以下簡單程序代碼:
( (lambda () (display "hello ") (display "world") (newline)) )
=> hello world
現在是python:
=> >>> lambda :print("hello") print("world");
以為你是這個意思,
>>> f = lambda : print("hello","world")
>>> f
<function <lambda> at 0x7faeca581d08>
>>> f()
hello world
這不是您編寫Python的方式。 Lambda是僅用於非常簡單功能的語法糖,並且只能包含單個表達式。 如果您想做其他事情,則必須編寫一個函數。
def hello_world():
print("hello")
print("world")
請注意,這不是lambda的事實沒有任何區別。 您仍然可以將hello_world
作為一流對象傳遞。
如果您真的想在lambda內對多個表達式進行排序,則可以通過從多個子表達式構造數據結構來“偽造”它。 Python將在構建數據結構時評估數據結構中的項目。 元組是使用的更有效的數據結構之一:
>>> f = lambda: (print('Hello ', end=''), print('World'))
>>> x = f()
Hello World
請注意, f返回一個元組,其中包含兩個打印函數調用的返回值,每個調用函數均為None 。
>>> x
(None, None)
這可以按您期望的方式工作,因為Python保證按從左到右的順序評估元組中的表達式,如下所述:
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.