技巧 1:
在Python中反轉字符串
>>> a = "codementor" >>> print "Reverse is",a[::-1] Reverse is rotnemedoc
技巧 2:
轉置矩陣
>>> mat = [[1, 2, 3], [4, 5, 6]] >>> zip(*mat) [(1, 4), (2, 5), (3, 6)]
技巧 3:
將列表的所有三個值存儲在3個新變量中
>>> a = [1, 2, 3] >>> x, y, z = a >>> x 1 >>> y 2 >>> z 3
技巧 4:
a = ["Code", "mentor", "Python", "Developer"]
從上面列表中的所有元素創建一個字符串。
>>> print " ".join(a) Code mentor Python Developer
技巧 5:
List 1 = ['a', 'b', 'c', 'd']
List 2 = ['p', 'q', 'r', 's']
編寫要打印的Python代碼
- ap
- bq
- cr
- ds
>>> for x, y in zip(list1,list2): ... print x, y ... a p b q c r d s
技巧 6:
用一行代碼交換兩個數字。
>>> a=7 >>> b=5 >>> b, a =a, b >>> a 5 >>> b 7
技巧 7:
打印“ codecodecodecode mentormentormentormentormentor”而不使用循環
>>> print "code"*4+' '+"mentor"*5 codecodecodecode mentormentormentormentormento
技巧 8:
a = [[1, 2], [3, 4], [5, 6]]
將其轉換為單個列表,而不使用任何循環。
Output:- [1, 2, 3, 4, 5, 6]
>>> import itertools >>> list(itertools.chain.from_iterable(a)) [1, 2, 3, 4, 5, 6] [1, 2, 3, 4, 5, 6]
技巧 9:
檢查兩個詞是否是字謎
def is_anagram(word1, word2): """Checks whether the words are anagrams. word1: string word2: string returns: boolean """
完成上述方法,找出兩個單詞是否是字謎。
from collections import Counter def is_anagram(str1, str2): return Counter(str1) == Counter(str2) >>> is_anagram('abcd','dbca') True >>> is_anagram('abcd','dbaa') False
技巧 10:
接受字符串輸入
例如“ 1 2 3 4”並返回[1、2、3、4]
請記住,返回的列表中包含整數。不要使用多於一行的代碼。
>>> result = map(lambda x:int(x) ,raw_input().split()) 1 2 3 4 >>> result [1, 2, 3, 4]
我要提到的是Python的10 + 2功能,該功能與其他編程語言有所不同。 這些功能也是人們選擇python而不是其他語言的原因。 語言種類繁多,各有所長,但是它們是任何語言的獨特之處。 根據編程語言的功能選擇任何項目。 python的功能是:
1. Python有兩種簡單易用的方式
當我們說“簡單”一詞時,我們在不同的上下文中指它。
易於編碼
正如我們在前面的課程中所看到的,Python非常易於編碼。 與其他流行語言(如Java和C ++)相比,使用Python編寫代碼更容易。 任何人都可以在短短幾個小時內學習python語法。 盡管可以肯定,但精通Python需要了解其所有高級概念以及軟件包和模塊。 這需要時間。 因此,它是程序員友好的。
易於閱讀
作為一種高級語言,Python代碼很像英語。查看它,您可以知道代碼應該做什么。而且,由於它是動態類型的,因此它要求縮進。這有助於提高可讀性。
2. Python富有表現力
首先,讓我們了解表現力。 假設我們有兩種語言A和B,並且可以使用本地轉換在B中制作可以在A中制作的所有程序。 但是,有些程序可以使用局部轉換在B中創建,而不能在A中進行。 然后,據說B比A具有更高的表達力。Python為我們提供了無數的構造,可幫助我們專注於解決方案而不是語法。 這是出色的python功能之一,可告訴您為什么應該學習Python。
3.它是免費和開源的
首先,Python是免費提供的。您可以從以下鏈接下載
https://www.python.org/downloads/
有關如何下載和安裝Python的見解,請參閱有關Python安裝的本教程。
其次,它是開源的。 這意味着其源代碼可供公眾使用。 您可以下載,更改,使用和分發它。 這稱為FLOSS(自由/自由和開源軟件)。 作為Python社區,我們所有人都朝着一個目標前進-不斷完善的Python。
4. Python是一種高級語言
正如我們討論的那樣,它是一種高級語言。 這意味着作為程序員,我們不需要記住系統架構。 我們也不需要管理內存。 這使其對程序員更友好,並且是python的關鍵功能之一。
5. Python是可移植的
假設您已經為Windows計算機編寫了Python代碼。 現在,如果要在Mac上運行它,則無需對其進行更改。 換句話說,您可以采用一個代碼並在任何計算機上運行它,而無需為不同的計算機編寫不同的代碼。 這使Python成為一種可移植的語言。 但是,在這種情況下,必須避免使用任何與系統相關的功能。
6.這是一種解釋語言
如果您熟悉C ++或Java等語言,則必須先對其進行編譯,然后再運行它。 但是在Python中,無需編譯它。 在內部,其源代碼被轉換為稱為字節碼的立即形式。 因此,您所需要做的就是運行Python代碼,而不必擔心鏈接到庫以及其他一些事情。
通過解釋,我們的意思是源代碼是逐行執行的,而不是一次執行。 因此,調試代碼更加容易。 同樣,解釋使它只比Java慢一點,但這與它所提供的好處相比並不重要。
7. Python語言是面向對象的
可以對現實世界進行建模的編程語言被稱為面向對象的。 它着重於對象,並結合了數據和函數。 相反,面向過程的語言圍繞着功能展開,這些功能是可以重用的代碼。 Python同時支持面向過程和面向對象的編程,這是python的關鍵功能之一。 與Java不同,它還支持多重繼承。 類是此類對象的藍圖。 它是一種抽象數據類型,不包含任何值。
8. Python是可擴展的
如果需要,您可以使用其他語言(如C ++)編寫一些Python代碼。這使Python成為一種可擴展的語言,這意味着它可以擴展為其他語言。
讓我們看看更多的Python功能
9.它是可嵌入的
我們剛剛看到可以將其他語言的代碼放入我們的Python源代碼中。 但是,也可以將我們的Python代碼放入其他語言(如C ++)的源代碼中。 這使我們能夠將腳本功能集成到其他語言的程序中。
10.它具有大型標准庫
使用大型庫下載Python即可使用,因此您不必為每件事編寫自己的代碼。 有用於正則表達式,文檔生成,單元測試,Web瀏覽器,線程,數據庫,CGI,電子郵件,圖像處理以及許多其他功能的庫。
11. Python可用於GUI編程
您可以使用Tk創建基本的GUI。
12. Python是動態類型的
Python是動態類型的。這意味着值的類型是在運行時而不是預先確定的。這就是為什么我們在聲明數據時無需指定數據類型的原因。