# ä½¿ç¨ Python3 åç®æ³é¢ è¿éç®åä»ç»ä½¿ç¨ Python3 åç®æ³é¢æ¶çä¸äºç¹ç¹ãæ¬é¡¹ç®å¹¶ä¸æ¯ä¸ä¸ª Python3 æç¨ï¼æä»¥é»è®¤å¤§å®¶å¯¹ Python3 æä¸å®çäºè§£ï¼å¯¹äºé¶åºç¡çåå¦å»ºè®®é¦å äºè§£ä¸ä¸ Python3 çåºæ¬è¯æ³çåºç¡ç¥è¯ã ## é»è¾ è¿è¡ coding é¢è¯æ¶ï¼å¦æä¸æå®ä½¿ç¨çç¼ç¨è¯è¨ï¼ä¸è¬æ¥è®²èå¯çæ¯åé¢çæè·¯è䏿¯ç¼ç¨æ¬èº«ï¼å æ¤ä¸éè¦ä»é¶å¼å§å®ç°ä¸äºåºç¡çæ°æ®ç»ææç®æ³ï¼å©ç¨è¯è¨çä¸äºç¹æ§åèªå¸¦çæ ååºå¯ä»¥å¤§å¤§ç®å代ç ï¼æé«åé¢é度ãä¸é¢ä¼æ»ç»ä¸äº Python3 常ç¨çç¹æ§ï¼æ åç®æ³åæ°æ®ç»æã ## 常ç¨ç¹æ§ Pythonè¯è¨æå¾å¤ç¹æ§å¯ä»¥å¤§å¤§ç®å代ç ï¼ä¸é¢å举å 个常ç¨çã #### æ°ç»åå§å ```Python # åå§åä¸ä¸ªé¿åº¦ä¸º N çä¸ç»´æ°ç» Array = [0] * N # åå§åä¸ä¸ªå½¢ç¶ä¸º MxN çäºç»´æ°ç»(ç©éµ) Matrix = [[0] * N for _ in range(M)] # æèï¼å¯ä»¥åæ [[0] * N] * M åï¼ ``` #### 交æ¢å ç´ å¼ ```Python # cè¯è¨é£æ ¼ç交æ¢ä¸¤ä¸ªå ç´ å¼ tmp = a a = b b = tmp # python飿 ¼ a, b = b, a ``` #### è¿ç»ä¸ç弿çå¼ ```Python # 夿 aï¼bï¼c æ¯å¦ç¸çï¼Pythonéå¯ä»¥ç´æ¥åè¿ç if a == b == c: return True # ä¸çå¼ä¹å¯ä»¥ if a <= b < c: return True ``` ## æ åç®æ³ #### æåº Python 䏿åºä¸»è¦ä½¿ç¨ sorted() å .sort() 彿°ï¼å¨[å®ç½](https://docs.python.org/3/howto/sorting.html)æè¯¦ç»ä»ç»ï¼å¤§å®¶å¯ä»¥èªè¡é 读ã #### äºåæ¥æ¾åæå ¥ Python èªå¸¦ç [bisect](https://docs.python.org/3/library/bisect.html) åºå¯ä»¥å®ç°äºåæ¥æ¾åæå ¥ï¼é常æ¹ä¾¿ã ## æ åæ°æ®ç»æ #### æ Python ä¸çæ 使ç¨èªå¸¦ç list ç±»æ¥å®ç°ï¼å¯åè[宿¹ææ¡£](https://docs.python.org/3/tutorial/datastructures.html#using-lists-as-stacks)ã #### éå ä½¿ç¨ collections åºä¸ç deque ç±»å®ç°ï¼å¯åè[宿¹ææ¡£](https://docs.python.org/3/library/collections.html#collections.deque)ã #### å Python 䏿²¡æçç heap ç±»ï¼å®ç°å æ¯ä½¿ç¨ list ç±»é å heapq åºä¸çå ç®æ³ï¼ä¸åªæ¯ææå°å ï¼æå¤§å éè¦éè¿ä¼ å ¥è´çä¼å 级æ¥å®ç°ï¼å¯åè[宿¹ææ¡£](https://docs.python.org/3.8/library/heapq.html)ã #### HashSetï¼HashTable åå«éè¿ [set ç±»](https://docs.python.org/3.8/library/stdtypes.html#set-types-set-frozenset)å [dict ç±»](https://docs.python.org/3/library/stdtypes.html#typesmapping)æ¥å®ç°ã ## collections åº Python ç [collections åº](https://docs.python.org/3/library/collections.html)å¨å·é¢æ¶ä¼ç»å¸¸ç¨å°ï¼å®æå±äºä¸äºPythonä¸åºç¡çç±»ï¼æä¾äºæ´å¤åè½ï¼ä¾å¦ defaultdict å¯ä»¥é¢è®¾åå ¸ä¸å ç´ value çç±»åï¼èªå¨æä¾åå§åï¼Counter å¯ä»¥ç´æ¥ç»è®¡å ç´ åºç°ä¸ªæ°çã ## æ»ç» 以ä¸å举äºä¸äºç¨ Python3 åç®æ³é¢æ¶å¯ä»¥ç¨å°çä¸äºç¹æ§ï¼æ åç®æ³åæ°æ®ç»æï¼æ»ç»å¾è¯å®ä¸å ¨ï¼å 为 Python3 ççæå¾å¤å¯ä»¥å©ç¨ç"éªæä½"ï¼å¤§å®¶å¨å¦ä¹ æ¬é¡¹ç®çæ¶åä¹ä¼è§å°ï¼ä¸ä¸è®°ä¸ä½ä¹æ²¡å ³ç³»ï¼å¤å®æå°±ä¼äºã