Python入門 —— 02基礎語法

来源:https://www.cnblogs.com/darksouls/archive/2018/01/01/8158185.html
-Advertisement-
Play Games

基礎語法入門學習推薦: [簡明 Python 教程] 下文僅為入門推薦書籍的補充與重點:* 多行語句:末尾使用斜杠 ( \ ) ,將一行分為多行。* 註釋:單行:#。多行:''' 內容 ''' """ 內容 """ (三個單引號或者三個雙引號)。* 空行:* 分號:函數之間或類的方法之間用空行... ...


基礎語法入門學習推薦: 簡明 Python 教程


下文僅為入門推薦書籍的補充與重點

  • 多行語句:末尾使用斜杠 ( \ ) ,將一行分為多行

    var = item1 +
    item2 +
    item3

  • 註釋:

    單行:# 多行:''' 內容 ''' """ 內容 """ (三個單引號或者三個雙引號)

  • 空行:

    函數之間或類的方法之間用空行分隔,表示一段新的代碼的開始。類和函數入口之間也用一行空行分隔,以突出函數入口的開始。 空行的作用在於分隔兩段不同功能或含義的代碼,便於日後代碼的維護或重構。

  • 分號:

    一般不用分號,如果單行需要寫多個語句則需要。

  • 縮進:

    python非常註重縮進,2個空格或4個空格或1個Tab鍵。



一、變數

標誌符

二、數據類型

  1. Number
  2. 字元串
  3. 列表 (list)
  4. 元組 (turple)
  5. 字典 (dictionnary)
可變數據類型
     * 整型
     * 浮點型
     * 字元串型
     * 元組
不可變數據類型
     * 列表
     * 字典

有關可變與不可變數據類型,如要瞭解詳細內容,請點這裡

類型轉換:

chr(i) 把一個ASCII數值,變成字元
ord(i) 把一個字元或者unicode字元,變成ASCII數值
oct(x) 把整數x變成八進位表示的字元串
hex(x) 把整數x變成十六進位表示的字元串
str(obj) 得到obj的字元串描述
list(seq) 把一個sequence轉換成一個list
tuple(seq) 把一個sequence轉換成一個tuple
dict(),dict(list) 轉換成一個dictionary
int(x) 轉換成一個integer
long(x) 轉換成一個long interger
float(x) 轉換成一個浮點數
complex(x) 轉換成複數
max(...) 求最大值
min(...) 求最小值

三、運算符 詳解

  • 算術運算符
  • 比較(關係)運算符
  • 賦值運算符
  • 邏輯運算符
  • 位運算符
  • 成員運算符
  • 身份運算符
  • 運算符優先順序

四、條件語句

if 判斷條件:
    執行語句……
else:
    執行語句……

五、迴圈語句

while 判斷條件:
    執行語句......

(迭代)
for iterating_var in sequence:
    執行語句......

六、函數

  1. 形式: def function( parameters ): 語句 return [expression]

  2. 參數:

    • 必備參數 (預設參數)
    • 關鍵字參數 (調用函數時,參數位置為:形參=實參)
    • 預設參數 (定義函數時,形參已賦值)
    • 不定長參數 ( *args: 除必備參數外其餘參數全存在一個元組,**kwargs:除必備參數外其餘鍵值形式的參數全存在一個字典中)
  3. 匿名函數:

    變數 = lambda [arg1 [,arg2,.....argn]]: 表達式

  4. return 語句:

    返回多個參數時:return [arg1,arg2,...] 返回列表,元組,字典都行

  5. 函數內使用全局變數,需用global 聲明已有全局變數。

七、對象

八、異常

一些特性:

九、模塊

import moudle
from moudle import tool

包:

部分函數

系統相關的信息模塊: import sys

sys.argv 是一個 list,包含所有的命令行參數.
sys.stdout sys.stdin sys.stderr 分別表示標準輸入輸出,錯誤輸出的文件對象.
sys.stdin.readline() 從標準輸入讀一行 sys.stdout.write("a") 屏幕輸出a
sys.exit(exit_code) 退出程式
sys.modules 是一個dictionary,表示系統中所有可用的module
sys.platform 得到運行的操作系統環境
sys.path 是一個list,指明所有查找module,package的路徑.

操作系統相關的調用和操作: import os

os.environ 一個dictionary 包含環境變數的映射關係
os.environ["HOME"] 可以得到環境變數HOME的值
os.chdir(dir) 改變當前目錄 os.chdir('d:\outlook')
註意windows下用到轉義
os.getcwd() 得到當前目錄
os.getegid() 得到有效組id os.getgid() 得到組id
os.getuid() 得到用戶id os.geteuid() 得到有效用戶id
os.setegid os.setegid() os.seteuid() os.setuid()
os.getgruops() 得到用戶組名稱列表
os.getlogin() 得到用戶登錄名稱
os.getenv 得到環境變數
os.putenv 設置環境變數
os.umask 設置umask
os.system(cmd) 利用系統調用,運行cmd命令

內置模塊(不用import就可以直接使用)常用內置函數:

help(obj) 線上幫助, obj可是任何類型
callable(obj) 查看一個obj是不是可以像函數一樣調用
repr(obj) 得到obj的表示字元串,可以利用這個字元串eval重建該對象的一個拷貝
eval_r(str) 表示合法的python表達式,返回這個表達式
dir(obj) 查看obj的name space中可見的name
hasattr(obj,name) 查看一個obj的name space中是否有name
getattr(obj,name) 得到一個obj的name space中的一個name
setattr(obj,name,value) 為一個obj的name
space中的一個name指向vale這個object
delattr(obj,name) 從obj的name space中刪除一個name
vars(obj) 返回一個object的name space。用dictionary表示
locals() 返回一個局部name space,用dictionary表示
globals() 返回一個全局name space,用dictionary表示
type(obj) 查看一個obj的類型
isinstance(obj,cls) 查看obj是不是cls的instance
issubclass(subcls,supcls) 查看subcls是不是supcls的子類

十、文件

  1. Python File(文件) 方法:

    file 對象使用 open 函數來創建,下表列出了 file 對象常用的函數:

方法名 描述
file.close() 關閉文件。關閉後文件不能再進行讀寫操作。
file.flush() 刷新文件內部緩衝,直接把內部緩衝區的數據立刻寫入文件, 而不是被動的等待輸出緩衝區寫入。
file.fileno() 返回一個整型的文件描述符(file descriptor FD 整型), 可以用在如os模塊的read方法等一些底層操作上。
file.isatty() 如果文件連接到一個終端設備返回 True,否則返回 False。
file.next() 返迴文件下一行。
file.read([size]) 從文件讀取指定的位元組數,如果未給定或為負則讀取所有。
file.readline([size]) 讀取整行,包括 "\n" 字元。
file.readlines([sizehint]) 讀取所有行並返回列表,若給定sizeint>0,則是設置一次讀多少位元組,這是為了減輕讀取壓力。
file.seek(offset[, whence]) 設置文件當前位置
file.tell() 返迴文件當前位置。
file.truncate([szie]) 截取文件,截取的位元組通過size指定,預設為當前文件位置。
file.write(str) 將字元串寫入文件,沒有返回值。
file.writelines(sequence) 向文件寫入一個序列字元串列表,如果需要換行則要自己加入每行的換行符。

2.Python OS 文件/目錄方法:

詳見這裡

os 模塊提供了非常豐富的方法用來處理文件和目錄。

附:python內置函數詳解


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 單例模式的作用就是在整個應用程式的生命周期中,單例類的實例都只存在一個,同時這個類還必須提供一個訪問該類的全局訪問點。 首先創建一個單例類,可以直接使用這個單例類獲得唯一的實例對象,也可以繼承該類,使用子類實例化對象。 下麵的代碼使用子類進行實例對象創建 Singleton.php文件 Single ...
  • 總結: 1. qt輸出中文亂碼原因分析 qt的編程環境預設是utf-8編碼格式(關於編碼見下文知識要點一); 程式運行,程式並不認識ANSI,UTF-8以及任何其他編碼.系統只知道處理你給它的字元的二進位表示. 關於 "中""文" 的3種編碼二進位內容: ANSI(GBK): 0xd6d0 0xce ...
  • 前言: 技術選型並不是一成不變的,需要根據技術的發展、項目實際情況和人員技能構成實際考慮,在此列出的只是這些年常用的。 開發環境 1. 主要開發語言:Java7, HTML, Javascript等 2. 遵循規範:JEE 7,編碼規範,資料庫規範等 3. 關係型資料庫:MySQL 5.5.16或以 ...
  • 車聯網架構 車聯網架構是終端採集車輛信息、運行狀態、部件信息等通過網路傳輸至後臺開放平臺中,依托車聯網服務系統,服務生產廠商、 維保商、保險公司、呼叫中心、物流公司等。 車聯網業務流程-保險業務 車聯網服務系統處理的業務數據,通過大數據分析,用於保險行業的增值服務。 車聯網業務流程-遠程診斷、遠程升 ...
  • 前言: 這段時間在跟一個車聯網的項目,所以做了一些研究。 OBD概述 OBD是英文On-Board Diagnostic的縮寫,中文翻譯為“車載診斷系統”。這個系統隨時監控發動機的運行狀況和尾氣後處理系統的工作狀態,一旦發現有可能引起排放超標的情況,會馬上發出警示。當系統出現故障時,故障燈(MIL) ...
  • 一.使用try-catch捕獲單個異常 如果異常出現的話,會立即終止程式,我們得處理異常: 1) :該方法不處理,而是聲明拋出,由該方法的調用者來處理,(throws) 2) :在方法中使用try-catch的語句塊來處理異常- 使用try-catch捕獲單個異常: 語法如下: try{ 編寫可能會 ...
  • 介面的定義 介面的作用是定義該類型的實例要具有的功能,也就是必須執行哪些工作,並且不需要關心這些工作是怎麼具體進行的。介面定義的方法沒有方法體,並且介面不允許定義實例變數。如果一個類實現了這個介面就必須實現重寫介面的所有方法。介面如下: 介面的優勢 介面的設計主要是為了支持運行時動態方法的解析。通常 ...
  • 在使用maven過程中,我們在開發階段經常性的會有很多公共庫處於不穩定狀態,隨時需要修改併發布,可能一天就要發佈一次,遇到bug時,甚至一天要發佈N次。我們知道,maven的依賴管理是基於版本管理的,對於發佈狀態的artifact,如果版本號相同,即使我們內部的鏡像伺服器上的組件比本地新,maven ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...