導航:首頁 > 編程語言 > python3中注釋

python3中注釋

發布時間:2024-09-07 08:15:36

python3字元串都是什麼編碼

編碼

字元串是一種數據類型,但是,字元串比較特殊的是還有一個編碼問題。

因為計算機只能處理數字,如果要處理文本,就必須先把文本轉換為數字才能處理。最早的計算機在設計時採用8個比特(bit)作為一個位元組(byte),所以,一個位元組能表示的最大的整數就是255(二進制11111111=十進制255),如果要表示更大的整數,就必須用更多的位元組。比如兩個位元組可以表示的最大整數是65535,4個位元組可以表示的最大整數是4294967295。

由於計算機是美國人發明的,因此,最早只有127個字母被編碼到計算機里,也就是大小寫英文字母、數字和一些符號,這個編碼表被稱為ASCII編碼,比如大寫字母A的編碼是65,小寫字母z的編碼是122。

Unicode

Unicode把所有語言都統一到一套編碼里,這樣就不會再有亂碼問題了。

Unicode標准也在不斷發展,但最常用的是用兩個位元組表示一個字元(如果要用到非常偏僻的字元,就需要4個位元組)。現代操作系統和大多數編程語言都直接支持Unicode。

現在,捋一捋ASCII編碼和Unicode編碼的區別:ASCII編碼是1個位元組,而Unicode編碼通常是2個位元組。

字母A用ASCII編碼是十進制的65,二進制的01000001;

字元0用ASCII編碼是十進制的48,二進制的00110000,注意字元'0'和整數0是不同的;

漢字已經超出了ASCII編碼的范圍,用Unicode編碼是十進制的20013,二進制的01001110 00101101。

如果把ASCII編碼的A用Unicode編碼,只需要在前面補0就可以,因此,A的Unicode編碼是00000000 01000001。

新的問題又出現了:如果統一成Unicode編碼,亂碼問題從此消失了。但是,如果你寫的文本基本上全部是英文的話,用Unicode編碼比ASCII編碼需要多一倍的存儲空間,在存儲和傳輸上就十分不劃算。

所以,又出現了把Unicode編碼轉化為「可變長編碼」的UTF-8編碼。UTF-8編碼把一個Unicode字元根據不同的數字大小編碼成1-6個位元組,常用的英文字母被編碼成1個位元組,漢字通常是3個位元組,只有很生僻的字元才會被編碼成4-6個位元組。如果你要傳輸的文本包含大量英文字元,用UTF-8編碼就能節省空間:

字元

ASCII

Unicode

UTF-8

A 01000001 00000000 01000001 01000001

中 x 01001110 00101101 11100100 10111000 10101101

從上面的表格還可以發現,UTF-8編碼有一個額外的好處,就是ASCII編碼實際上可以被看成是UTF-8編碼的一部分,所以,大量只支持ASCII編碼的歷史遺留軟體可以在UTF-8編碼下繼續工作。

搞清楚了ASCII、Unicode和UTF-8的關系,我們就可以總結一下現在計算機系統通用的字元編碼工作方式:

在計算機內存中,統一使用Unicode編碼,當需要保存到硬碟或者需要傳輸的時候,就轉換為UTF-8編碼。

用記事本編輯的時候,從文件讀取的UTF-8字元被轉換為Unicode字元到內存里,編輯完成後,保存的時候再把Unicode轉換為UTF-8保存到文件:

瀏覽網頁的時候,伺服器會把動態生成的Unicode內容轉換為UTF-8再傳輸到瀏覽器:

所以你看到很多網頁的源碼上會有類似<meta charset="UTF-8" />的信息,表示該網頁正是用的UTF-8編碼。

Python的字元串

在最新的Python 3版本中,字元串是以Unicode編碼的,也就是說,Python的字元串支持多語言,例如:

>>> print('包含中文的str')
包含中文的str

對於單個字元的編碼,Python提供了ord()函數獲取字元的整數表示,chr()函數把編碼轉換為對應的字元:

1個中文字元經過UTF-8編碼後通常會佔用3個位元組,而1個英文字元只佔用1個位元組。

在操作字元串時,我們經常遇到str和bytes的互相轉換。為了避免亂碼問題,應當始終堅持使用UTF-8編碼對str和bytes進行轉換。

Python源代碼也是一個文本文件,所以,當你的源代碼中包含中文的時候,在保存源代碼時,就需要務必指定保存為UTF-8編碼。當Python解釋器讀取源代碼時,為了讓它按UTF-8編碼讀取,我們通常在文件開頭寫上這兩行

#!/usr/bin/env python3# -*- coding: utf-8 -*-

第二行注釋是為了告訴Python解釋器,按照UTF-8編碼讀取源代碼,否則,你在源代碼中寫的中文輸出可能會有亂碼。

格式化:

在Python中,採用的格式化方式和C語言是一致的,用%實現,舉例如下:

format % (...params)
>>> 'Hello, %s' % 'world''Hello, world'>>> 'Hi, %s, you have $%d.' % ('Michael', 1000000)'Hi, Michael, you have $1000000.'

%運算符就是用來格式化字元串的。在字元串內部,%s表示用字元串替換,%d表示用整數替換,%x表示16進制整數,有幾個%?佔位符,後面就跟幾個變數或者值,順序要對應好。如果只有一個%?,括弧可以省略。

格式化整數和浮點數還可以指定是否補0和整數與小數的位數:

>>> '%2d-%02d' % (3, 1)' 3-01'>>> '%.2f' % 3.1415926'3.14'

有些時候,字元串裡面的%是一個普通字元怎麼辦?這個時候就需要轉義,用%%來表示一個%:

>>> 'growth rate: %d %%' % 7'growth rate: 7 %'

㈡ Python3基礎

默認情況下,Python 3 源碼文件以 UTF-8 編碼,所有字元串都是 unicode 字元串。 當然你也可以為源碼文件指定不同的編碼:

在 Python 3 中,非 ASCII 標識符也是允許的了。

保留字即關鍵字,我們不能把它們用作任何標識符名稱。Python 的標准庫提供了一個 keyword 模塊,可以輸出當前版本的所有關鍵字:

Python中單行注釋以 # 開頭,實例如下:

執行以上代碼,輸出結果為:

多行注釋可以用多個 # 號,還有 ''' 和 """:

執行以上代碼,輸出結果為:

python最具特色的就是使用縮進來表示代碼塊,不需要使用大括弧 {} 。

縮進的空格數是可變的,但是同一個代碼塊的語句必須包含相同的縮進空格數。實例如下:

以下代碼最後一行語句縮進數的空格數不一致,會導致運行錯誤:

以上程序由於縮進不一致,執行後會出現類似以下錯誤:

Python 通常是一行寫完一條語句,但如果語句很長,我們可以使用反斜杠()來實現多行語句,例如:

在 [], {}, 或 () 中的多行語句,不需要使用反斜杠(),例如:

python中數字有四種類型:整數、布爾型、浮點數和復數。

實例

輸出結果為:

函數之間或類的方法之間用空行分隔,表示一段新的代碼的開始。類和函數入口之間也用一行空行分隔,以突出函數入口的開始。

空行與代碼縮進不同,空行並不是Python語法的一部分。書寫時不插入空行,Python解釋器運行也不會出錯。但是空行的作用在於分隔兩段不同功能或含義的代碼,便於日後代碼的維護或重構。

記住: 空行也是程序代碼的一部分。

執行下面的程序在按回車鍵後就會等待用戶輸入:

以上代碼中 ," "在結果輸出前會輸出兩個新的空行。一旦用戶按下 enter 鍵時,程序將退出。

Python可以在同一行中使用多條語句,語句之間使用分號(;)分割,以下是一個簡單的實例:

執行以上代碼,輸出結果為:

縮進相同的一組語句構成一個代碼塊,我們稱之代碼組。

像if、while、def和class這樣的復合語句,首行以關鍵字開始,以冒號( : )結束,該行之後的一行或多行代碼構成代碼組。

我們將首行及後面的代碼組稱為一個子句(clause)。

如下實例:

print 默認輸出是換行的,如果要實現不換行需要在變數末尾加上 end=""

以上實例執行結果為:

在 python 用 import 或者 from...import 來導入相應的模塊。

將整個模塊(somemole)導入,格式為: import somemole

從某個模塊中導入某個函數,格式為: from somemole import somefunction

從某個模塊中導入多個函數,格式為: from somemole import firstfunc, secondfunc, thirdfunc

將某個模塊中的全部函數導入,格式為: from somemole import *

import sys print ( ' ================Python import mode========================== ' ) ; print ( ' 命令行參數為: ' ) for i in sys . argv : print ( i ) print ( ' python 路徑為 ' , sys . path )

from sys import argv , path # 導入特定的成員 print ( ' ================python from import=================================== ' ) print ( ' path: ' , path ) # 因為已經導入path成員,所以此處引用時不需要加sys.path

很多程序可以執行一些操作來查看一些基本信息,Python可以使用-h參數查看各參數幫助信息:

㈢ python代碼的注釋有幾種

python代碼的注釋有兩種。
一、python單行注釋符號(#)
python中單行注釋採用#開頭,示例:#thisisacomment。
二、批量、多行注釋符號
多行注釋是用三引號,例如:輸入''''''或者"""",將要注釋的代碼插在中間。


Python由荷蘭數學和計算機科學研究學會的吉多·范羅蘇姆於1990年代初設計,作為一門叫做ABC語言的替代品。Python提供了高效的高級數據結構,還能簡單有效地面向對象編程。
Python語法和動態類型,以及解釋型語言的本質,使它成為多數平台上寫腳本和快速開發應用的編程語言,隨著版本的不斷更新和語言新功能的添加,逐漸被用於獨立的、大型項目的開發。"

㈣ Python基本語法

1.Hello World

實例 HelloWorld.py

# !/usr/bin/python3
print(「Hello, World!」);

運行腳本

$python HelloWorld.py

註解:以如上方式運行,第一行無意義;但以./HelloWorld.py的方式運行,第一行則指定python解釋器的位置

2.標識符

㈤ Python3 求個注釋 請看代碼

importos

all_files=os.listdir(os.curdir)#使用os.curdir表示當前目錄更標准
type_dict=dict()#定義一個字典

foreach_fileinall_files:
ifos.path.isdir(each_file):
type_dict.setdefault('文件夾',0)#設置字典默認值如果沒有這個鍵就添加為0
type_dict['文件夾']+=1#值+1
else:
ext=os.path.splitext(each_file)[1]#取擴展名
type_dict.setdefault(ext,0)#同上
type_dict[ext]+=1

#遍歷字典得到相當文件數量
foreach_typeintype_dict.keys():
print('該文件夾下共有類型為【%s】的文件%d個'%(each_type,type_dict[each_type]))

㈥ Python中如何添加註釋

1. 單行注釋


Python編程語言的單行注釋常以#最初,單行注釋能夠作為獨自的一行放在被注釋代碼行之上,也能夠放在語句或許表達式之後。


實例:


# -*- coding: UTF-8 -*-


print ("hello world!"); #您好,國際


2. 多行注釋


Python中多行注釋運用三個單引號(’’’)或許三個雙引號(”””)來標記,而實際上這是多行字元串的書寫方法,並不是Python本身提倡的多行注釋方法。


實例:


'''


這是多行注釋,運用單引號。


這是多行注釋,運用單引號。


'''


"""


這是多行注釋,運用雙引號。


這是多行注釋,運用雙引號。


"""


3. 編碼注釋


在進行Python開發時,需進行編碼聲明,如選用UTF-8編碼,需在源碼上方進行 # -*- coding: UTF-8 -*- 聲明,從Python3開始,Python默許運用UTF-8編碼,所以Python3.x的源文件不需要特別聲明UTF-8編碼。


4. 平台注釋


如果需要使Python程序運行在Windows平台上,需在Python文件的上方加上 #!/usr/bin/python 注釋闡明。


關於Python中如何添加註釋,青藤小編就和您分享到這里了。如果您對python編程有濃厚的興趣,希望這篇文章可以為您提供幫助。如果您還想了解更多關於python編程的技巧及素材等內容,可以點擊本站的其他文章進行學習。

閱讀全文

與python3中注釋相關的資料

熱點內容
安卓路由表怎麼看 瀏覽:74
10個小孩分糖果python 瀏覽:823
安卓app小紅點怎麼取消 瀏覽:286
馬哥linux面授 瀏覽:768
2345程序員 瀏覽:371
怎麼開啟網速顯示安卓 瀏覽:204
索尼950app怎麼樣 瀏覽:391
計算機畢設論文源碼 瀏覽:148
小米手機怎麼下載易媒體App 瀏覽:191
還原系統設計可以怎樣清理文件夾 瀏覽:670
北京時間校準伺服器雲伺服器 瀏覽:844
pythonexcel數據計算 瀏覽:49
內醫附院黨建APP怎麼下載 瀏覽:356
榮耀v20刷加密門禁卡 瀏覽:329
app緩沖視頻怎麼保存在手機 瀏覽:433
廣度優先演算法c語言 瀏覽:680
提高程序員競爭力 瀏覽:108
nfc可以開加密門卡嗎 瀏覽:675
如何知道網頁使用的伺服器是什麼 瀏覽:224
單片機接反電源會燒嗎 瀏覽:287