學習廖雪峰老師的python記錄的筆記
一 輸入輸出
輸入 input()
輸出 print
# print ('abc', 'hello', 'world')name = input('please enter you name\n')
print ('hello', name)
二 python基礎
python採用縮排方式,注釋使用#
語句以冒號結尾時,縮排的語句視為**塊,python大小寫敏感
1 資料型別和變數
整型, 布林型(true, false), 浮點型, 空值(none), 字串
邏輯運算子 and or not
理解變數在計算機記憶體中的表示:如:
a = 'abc'
python直譯器做了兩件事:
1 在記憶體中建立了乙個'abc'的字串
2 在記憶體中建立了乙個a的變數,把它指向'abc'字串
常量:一般用大寫字母表示,如pi = 3.1415926 (約定俗成的)
預算:/除法 得到浮點數,如9/3=3.0
//地板除 取小於該數的最大整數
2 編碼
早起的unicode是定長位元組,使用兩個位元組表示乙個字元,後期發展為變長位元組的編碼(utf-8)
英文本元使用乙個位元組,中文使用三個字元
ascii和unicode和utf-8關係
在計算機記憶體中,統一使用unicode編碼,當需要儲存到硬碟或者需要傳輸的時候,就轉換成utf-8
用記事本編輯的時候,從檔案讀取的utf-8字元被轉換為unicode字元到記憶體裡,編輯完成後,儲存的時候再把unicode轉換為utf-8
瀏覽網頁的時候,伺服器會把動態生成的unicode內容轉換成uft-8在傳輸到瀏覽器
在python最新版中,字串是以unicode編碼的
對於單個字元的編碼,python提供了ord()函式獲取字元的整數表示,chr吧編碼轉換成對應的字元
由於python的字串型別為string,在記憶體中以unicode表示,乙個字元對應若干個位元組,如果想要在網路上傳輸,或者儲存到磁碟上,就要把str變為位元組為單位的bytes,python對bytes型別的資料用b字首的單引號或者雙引號表示
如 x = b'abc'
以unicode表示的str通過encode()方法可以編碼為指定的bytes
>>> 'abc'.encode('ascii') b'abc'
>>> '中文'.encode('utf-8') b'\xe4\xb8\xad\xe6\x96\x87'
在bytes中,無法顯示為ascii字元的位元組,用\x##顯示
>>> b'abc'.decode('ascii') 'abc'
>>> b'\xe4\xb8\xad\xe6\x96\x87'.decode('utf-8') '中文'
len()用於統計字元或者位元組的長度 >>> len('中國'.encode('utf-8')) 輸出6
python源**是文字檔案,儲存的時候,一般都儲存為utf-8,為了讓直譯器讀取源**按照utf-8讀取,需要在檔案開頭加上這兩行
#!/usr/bin/env python3
# -*- coding:utf-8 -*-
python基礎學習
基本資料型別 學習基於python2.7,ubuntu16.04,python3中有一些不同的特性 在ubuntu終端輸入python,進入互動介面。print hello,world print 是乙個常用函式,輸出字串。在python2中,print還是乙個關鍵字,可以用print hello,...
Python 基礎學習
一 python中的資料結構 容器 list 列表 a 1,2,3,4 用方括號標記 可被修改 a 0 1 tuple 元組 a 4,5,6 用圓括號標記 不可被修改 b 0 4 dictionary 字典 即對映 d set 集合 不重複,無序,不支援索引 s 會自動去重得到 二 函式式程式設計 ...
python基礎學習
從今天起,每天晚上9點更新部落格,成為乙個愛學習的程式工程師。特立此flag,監督自己的學習。python基礎學習分為以下幾章 基礎知識 列表和元組 使用字串 字典條件 迴圈和其他語句 抽象更加抽象 異常魔法方法 屬性和迭代器 自帶電池 模組 檔案和流 圖形使用者介面 資料庫支援 網路程式設計 py...