13個Python必備的知識建議收藏
Python在程式語言流行指數PYPL中已多次排名第一。
由於其程式碼可讀性和更簡單的語法,它被認為是有史以來最簡單的語言。
NumPy、Pandas、TensorFlow等各種AI和機器學習庫的豐富性,是Python核心需求之一。
如果你是資料科學家或 AI/機器學習的初學者,那麼Python是開始你的旅程的正確選擇。
本次,小F會帶著大家探索一些Python程式設計的基礎知識,雖然簡單但都很有用。
- 目錄
- 資料類型
- 變數
- 清單 ##集合
- # #字典
- 註解
- 基本功能
- 條件語句
- #迴圈語句
- 函數
異常處理
字串運算
正規表示式
1、資料型別
資料型別是可以儲存在變數中的資料規格。解釋器根據變數的類型為變數分配記憶體。
下面是Python中的各種資料類型。
2、變數- 變數是存放資料值的容器。
- 變數可以使用短名稱(如x和y)或更具描述性的名稱(age、carname、total_volume)。
- Python 變數命名規則:
- 變數名稱必須以字母或底線字元開頭
變數名稱不能以數字開頭
變數名只能包含字母數字字元和底線(A-z、0-9和_)
var1 = 'Hello World' var2 = 16 _unuseful = 'Single use variables'
#輸出結果如下。
3、列表列表(List)是一種有序且可更改的集合,允許重複的成員。 它可能不是同質的,我們可以建立一個包含不同資料類型(如整數、字串和物件)的清單。 >>> companies = ["apple","google","tcs","accenture"]
>>> print(companies)
['apple', 'google', 'tcs', 'accenture']
>>> companies.append("infosys")
>>> print(companies)
['apple', 'google', 'tcs', 'accenture', 'infosys']
>>> print(len(companies))
5
>>> print(companies[2])
tcs
>>> print(companies[-2])
accenture
>>> print(companies[1:])
['google', 'tcs', 'accenture', 'infosys']
>>> print(companies[:1])
['apple']
>>> print(companies[1:3])
['google', 'tcs']
>>> companies.remove("infosys")
>>> print(companies)
["apple","google","tcs","accenture"]
>>> companies.pop()
>>> print(companies)
["apple","google","tcs"]
登入後複製
4、集合集合(Set)是一個無序且無索引的集合,沒有重複的成員。 對於從清單中刪除重複條目非常有用。它還支援各種數學運算,例如並集、交集和差分。 >>> companies = ["apple","google","tcs","accenture"] >>> print(companies) ['apple', 'google', 'tcs', 'accenture'] >>> companies.append("infosys") >>> print(companies) ['apple', 'google', 'tcs', 'accenture', 'infosys'] >>> print(len(companies)) 5 >>> print(companies[2]) tcs >>> print(companies[-2]) accenture >>> print(companies[1:]) ['google', 'tcs', 'accenture', 'infosys'] >>> print(companies[:1]) ['apple'] >>> print(companies[1:3]) ['google', 'tcs'] >>> companies.remove("infosys") >>> print(companies) ["apple","google","tcs","accenture"] >>> companies.pop() >>> print(companies) ["apple","google","tcs"]
>>> set1 = {1,2,3,7,8,9,3,8,1}
>>> print(set1)
{1, 2, 3, 7, 8, 9}
>>> set1.add(5)
>>> set1.remove(9)
>>> print(set1)
{1, 2, 3, 5, 7, 8}
>>> set2 = {1,2,6,4,2}
>>> print(set2)
{1, 2, 4, 6}
>>> print(set1.union(set2))# set1 | set2
{1, 2, 3, 4, 5, 6, 7, 8}
>>> print(set1.intersection(set2)) # set1 & set2
{1, 2}
>>> print(set1.difference(set2)) # set1 - set2
{8, 3, 5, 7}
>>> print(set2.difference(set1)) # set2 - set1
{4, 6}
登入後複製
5、字典字典是作為鍵值對的可變無序項集合。 與其他數據類型不同,它以【鍵:值】對格式保存數據,而不是儲存單一數據。此功能使其成為映射JSON響應的最佳資料結構。 >>> set1 = {1,2,3,7,8,9,3,8,1} >>> print(set1) {1, 2, 3, 7, 8, 9} >>> set1.add(5) >>> set1.remove(9) >>> print(set1) {1, 2, 3, 5, 7, 8} >>> set2 = {1,2,6,4,2} >>> print(set2) {1, 2, 4, 6} >>> print(set1.union(set2))# set1 | set2 {1, 2, 3, 4, 5, 6, 7, 8} >>> print(set1.intersection(set2)) # set1 & set2 {1, 2} >>> print(set1.difference(set2)) # set1 - set2 {8, 3, 5, 7} >>> print(set2.difference(set1)) # set2 - set1 {4, 6}
>>> # example 1
>>> user = { 'username': 'Fan', 'age': 20, 'mail_id': 'codemaker2022@qq.com', 'phone': '18650886088' }
>>> print(user)
{'mail_id': 'codemaker2022@qq.com', 'age': 20, 'username': 'Fan', 'phone': '18650886088'}
>>> print(user['age'])
20
>>> for key in user.keys():
>>> print(key)
mail_id
age
username
phone
>>> for value in user.values():
>>>print(value)
codemaker2022@qq.com
20
Fan
18650886088
>>> for item in user.items():
>>>print(item)
('mail_id', 'codemaker2022@qq.com')
('age', 20)
('username', 'Fan')
('phone', '18650886088')
>>> # example 2
>>> user = {
>>> 'username': "Fan",
>>> 'social_media': [
>>> {
>>> 'name': "Linkedin",
>>> 'url': "https://www.linkedin.com/in/codemaker2022"
>>> },
>>> {
>>> 'name': "Github",
>>> 'url': "https://github.com/codemaker2022"
>>> },
>>> {
>>> 'name': "QQ",
>>> 'url': "https://codemaker2022.qq.com"
>>> }
>>> ],
>>> 'contact': [
>>> {
>>> 'mail': [
>>> "mail.Fan@sina.com",
>>> "codemaker2022@qq.com"
>>> ],
>>> 'phone': "18650886088"
>>> }
>>> ]
>>> }
>>> print(user)
{'username': 'Fan', 'social_media': [{'url': 'https://www.linkedin.com/in/codemaker2022', 'name': 'Linkedin'}, {'url': 'https://github.com/codemaker2022', 'name': 'Github'}, {'url': 'https://codemaker2022.qq.com', 'name': 'QQ'}], 'contact': [{'phone': '18650886088', 'mail': ['mail.Fan@sina.com', 'codemaker2022@qq.com']}]}
>>> print(user['social_media'][0]['url'])
https://www.linkedin.com/in/codemaker2022
>>> print(user['contact'])
[{'phone': '18650886088', 'mail': ['mail.Fan@sina.com', 'codemaker2022@qq.com']}]
登入後複製
6、註釋單行註釋,以井字元(#)開頭,後面帶有訊息並在行尾結束。 >>> # example 1 >>> user = { 'username': 'Fan', 'age': 20, 'mail_id': 'codemaker2022@qq.com', 'phone': '18650886088' } >>> print(user) {'mail_id': 'codemaker2022@qq.com', 'age': 20, 'username': 'Fan', 'phone': '18650886088'} >>> print(user['age']) 20 >>> for key in user.keys(): >>> print(key) mail_id age username phone >>> for value in user.values(): >>>print(value) codemaker2022@qq.com 20 Fan 18650886088 >>> for item in user.items(): >>>print(item) ('mail_id', 'codemaker2022@qq.com') ('age', 20) ('username', 'Fan') ('phone', '18650886088') >>> # example 2 >>> user = { >>> 'username': "Fan", >>> 'social_media': [ >>> { >>> 'name': "Linkedin", >>> 'url': "https://www.linkedin.com/in/codemaker2022" >>> }, >>> { >>> 'name': "Github", >>> 'url': "https://github.com/codemaker2022" >>> }, >>> { >>> 'name': "QQ", >>> 'url': "https://codemaker2022.qq.com" >>> } >>> ], >>> 'contact': [ >>> { >>> 'mail': [ >>> "mail.Fan@sina.com", >>> "codemaker2022@qq.com" >>> ], >>> 'phone': "18650886088" >>> } >>> ] >>> } >>> print(user) {'username': 'Fan', 'social_media': [{'url': 'https://www.linkedin.com/in/codemaker2022', 'name': 'Linkedin'}, {'url': 'https://github.com/codemaker2022', 'name': 'Github'}, {'url': 'https://codemaker2022.qq.com', 'name': 'QQ'}], 'contact': [{'phone': '18650886088', 'mail': ['mail.Fan@sina.com', 'codemaker2022@qq.com']}]} >>> print(user['social_media'][0]['url']) https://www.linkedin.com/in/codemaker2022 >>> print(user['contact']) [{'phone': '18650886088', 'mail': ['mail.Fan@sina.com', 'codemaker2022@qq.com']}]
# 定义用户年龄 age = 27 dob = '16/12/1994' # 定义用户生日
""" Python小常识 This is a multi line comment """
print(object(s), sep=separator, end=end, file=file, flush=flush) print("Hello World") # prints Hello World print("Hello", "World")# prints Hello World? x = ("AA", "BB", "CC") print(x) # prints ('AA', 'BB', 'CC') print("Hello", "World", sep="---") # prints Hello---World
>>> name = input("Enter your name: ")
Enter your name: Codemaker
>>> print("Hello", name)
Hello Codemaker
登入後複製
len()可以查看物件的長度。如果你輸入字串,則可以取得指定字串中的字元數。>>> name = input("Enter your name: ") Enter your name: Codemaker >>> print("Hello", name) Hello Codemaker
>>> str1 = "Hello World" >>> print("The length of the stringis ", len(str1)) The length of the stringis 11
>>> str(123) 123 >>> str(3.14) 3.14
>>> int("123") 123 >>> int(3.14) 3
>>> num = 5 >>> if (num > 0): >>>print("Positive integer") >>> else: >>>print("Negative integer")
>>> name = 'admin' >>> if name == 'User1': >>> print('Only read access') >>> elif name == 'admin': >>> print('Having read and write access') >>> else: >>> print('Invalid user') Having read and write access
>>> # loop through a list >>> companies = ["apple", "google", "tcs"] >>> for x in companies: >>> print(x) apple google tcs >>> # loop through string >>> for x in "TCS": >>>print(x) T C S
>>> # loop with range() function >>> for x in range(5): >>>print(x) 0 1 2 3 4 >>> for x in range(2, 5): >>>print(x) 2 3 4 >>> for x in range(2, 10, 3): >>>print(x) 2 5 8
>>> for x in range(5): >>>print(x) >>> else: >>>print("finished") 0 1 2 3 4 finished
>>> count = 0 >>> while (count < 5): >>>print(count) >>>count = count + 1 0 1 2 3 4
>>> count = 0 >>> while (count < 5): >>>print(count) >>>count = count + 1 >>> else: >>>print("Count is greater than 4") 0 1 2 3 4 Count is greater than 4
10、函数
函数是用于执行任务的可重用代码块。在代码中实现模块化并使代码可重用,这是非常有用的。
>>> # This prints a passed string into this function >>> def display(str): >>>print(str) >>>return >>> display("Hello World") Hello World
11、异常处理
即使语句在语法上是正确的,它也可能在执行时发生错误。这些类型的错误称为异常。我们可以使用异常处理机制来避免此类问题。
在Python中,我们使用try,except和finally关键字在代码中实现异常处理。
>>> def divider(num1, num2): >>> try: >>> return num1 / num2 >>> except ZeroDivisionError as e: >>> print('Error: Invalid argument: {}'.format(e)) >>> finally: >>> print("finished") >>> >>> print(divider(2,1)) >>> print(divider(2,0)) finished 2.0 Error: Invalid argument: division by zero finished None
12、字符串操作
字符串是用单引号或双引号(',")括起来的字符集合。
我们可以使用内置方法对字符串执行各种操作,如连接、切片、修剪、反转、大小写更改和格式化,如split()、lower()、upper()、endswith()、join()和ljust()、rjust()、format()。
>>> msg = 'Hello World' >>> print(msg) Hello World >>> print(msg[1]) e >>> print(msg[-1]) d >>> print(msg[:1]) H >>> print(msg[1:]) ello World >>> print(msg[:-1]) Hello Worl >>> print(msg[::-1]) dlroW olleH >>> print(msg[1:5]) ello >>> print(msg.upper()) HELLO WORLD >>> print(msg.lower()) hello world >>> print(msg.startswith('Hello')) True >>> print(msg.endswith('World')) True >>> print(', '.join(['Hello', 'World', '2022'])) Hello, World, 2022 >>> print(' '.join(['Hello', 'World', '2022'])) Hello World 2022 >>> print("Hello World 2022".split()) ['Hello', 'World', '2022'] >>> print("Hello World 2022".rjust(25, '-')) ---------Hello World 2022 >>> print("Hello World 2022".ljust(25, '*')) Hello World 2022********* >>> print("Hello World 2022".center(25, '#')) #####Hello World 2022#### >>> name = "Codemaker" >>> print("Hello %s" % name) Hello Codemaker >>> print("Hello {}".format(name)) Hello Codemaker >>> print("Hello {0}{1}".format(name, "2022")) Hello Codemaker2022
13、正则表达式
- 导入regex模块,import re。
- re.compile()使用该函数创建一个Regex对象。
- 将搜索字符串传递给search()方法。
- 调用group()方法返回匹配的文本。
>>> import re >>> phone_num_regex = re.compile(r'ddd-ddd-dddd') >>> mob = phone_num_regex.search('My number is 996-190-7453.') >>> print('Phone number found: {}'.format(mob.group())) Phone number found: 996-190-7453 >>> phone_num_regex = re.compile(r'^d+$') >>> is_valid = phone_num_regex.search('+919961907453.') is None >>> print(is_valid) True >>> at_regex = re.compile(r'.at') >>> strs = at_regex.findall('The cat in the hat sat on the mat.') >>> print(strs) ['cat', 'hat', 'sat', 'mat']
好了,本期的分享就到此结束了,有兴趣的小伙伴可以自行去实践学习。
以上是13個Python必備的知識建議收藏的詳細內容。更多資訊請關注PHP中文網其他相關文章!

熱AI工具

Undresser.AI Undress
人工智慧驅動的應用程序,用於創建逼真的裸體照片

AI Clothes Remover
用於從照片中去除衣服的線上人工智慧工具。

Undress AI Tool
免費脫衣圖片

Clothoff.io
AI脫衣器

Video Face Swap
使用我們完全免費的人工智慧換臉工具,輕鬆在任何影片中換臉!

熱門文章

熱工具

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)

PHP主要是過程式編程,但也支持面向對象編程(OOP);Python支持多種範式,包括OOP、函數式和過程式編程。 PHP適合web開發,Python適用於多種應用,如數據分析和機器學習。

PHP的核心優勢包括易於學習、強大的web開發支持、豐富的庫和框架、高性能和可擴展性、跨平台兼容性以及成本效益高。 1)易於學習和使用,適合初學者;2)與web服務器集成好,支持多種數據庫;3)擁有如Laravel等強大框架;4)通過優化可實現高性能;5)支持多種操作系統;6)開源,降低開發成本。

PHP適合網頁開發和快速原型開發,Python適用於數據科學和機器學習。 1.PHP用於動態網頁開發,語法簡單,適合快速開發。 2.Python語法簡潔,適用於多領域,庫生態系統強大。

Python更適合初學者,學習曲線平緩,語法簡潔;JavaScript適合前端開發,學習曲線較陡,語法靈活。 1.Python語法直觀,適用於數據科學和後端開發。 2.JavaScript靈活,廣泛用於前端和服務器端編程。

PHP起源於1994年,由RasmusLerdorf開發,最初用於跟踪網站訪問者,逐漸演變為服務器端腳本語言,廣泛應用於網頁開發。 Python由GuidovanRossum於1980年代末開發,1991年首次發布,強調代碼可讀性和簡潔性,適用於科學計算、數據分析等領域。

PHP是一種服務器端腳本語言,用於動態網頁開發和服務器端應用程序。 1.PHP是一種解釋型語言,無需編譯,適合快速開發。 2.PHP代碼嵌入HTML中,易於網頁開發。 3.PHP處理服務器端邏輯,生成HTML輸出,支持用戶交互和數據處理。 4.PHP可與數據庫交互,處理表單提交,執行服務器端任務。

VS Code 可用於編寫 Python,並提供許多功能,使其成為開發 Python 應用程序的理想工具。它允許用戶:安裝 Python 擴展,以獲得代碼補全、語法高亮和調試等功能。使用調試器逐步跟踪代碼,查找和修復錯誤。集成 Git,進行版本控制。使用代碼格式化工具,保持代碼一致性。使用 Linting 工具,提前發現潛在問題。

在 Notepad 中運行 Python 代碼需要安裝 Python 可執行文件和 NppExec 插件。安裝 Python 並為其添加 PATH 後,在 NppExec 插件中配置命令為“python”、參數為“{CURRENT_DIRECTORY}{FILE_NAME}”,即可在 Notepad 中通過快捷鍵“F6”運行 Python 代碼。
