python基礎(一):基本數據類型

Day1:python基礎

1.開發環境及其安裝

  1. python存在2.X和3.X版本;根據需要進行下載;其中2.X需要進行環境變量的配置。3.6最新版本只需要選擇添加到環境變量就可以自動添加。
  2. 開發工具:cmd命令行,python自帶的GUI,好用的pycharm開發工具,收費的,可以選擇使用免費的版本;

2.Hello World

直接在py文件裏面輸入print ‘Hello World!’ 就可以執行了。不需要其他代碼;

3.數據類型層次結構

在Python中一切數據皆對象。Python的面向對象原理與其他語言不同主要有兩個方面:

  • Python中所有的數據值都被封裝在相關對象中。可以把每個對象看成一個盒子(box),不同的對象裝在不同的盒子中。
  • Python程序中所有的東西都可以從程序訪問的對象,即使編寫的程序代碼也不例外。
  • 每個對象都有一個自己的地址,這個地址可以通過內建函數id()進行查看它的內存地址。相同的對象在內存中只有一份。即id(3)中這個3在運行內存中只有一個。

Python裏的數據類型有7大類:Number,String,List,Tuple,Set,Dictionary,Boolean;集合數人列元字,是

None:一個特殊的常量,用來表示語言意義上的無;

Number:包括int,long,float,complex(複數)虛數單位是j,如1+5j就是複數;由於python是無限精度的所以不會出現數據溢出問題。Number數值類型也是對象,可以通過id()查看內存地址;通過type()來判斷對象的類型。

Bool: True,False兩個表示;使用判斷符號(>,<,==)返回的就是布爾值;Bool是屬於int的子類,繼承自int,故True == 1,False == 0 返回True; 在python2中True ,False不是關鍵字可以進行賦值;

String:在Python中字符串用單引號或雙引號括起來,String類型的鏈接可以通過”+”或者”,”;String和int轉換用str(int)和int(string);

4.變量及其變量命名

變量代表的是某個內存的名字,可以看做內存地址的別名。

  • 變量定義不用聲明變量類型;
  • 變量命名規範使用駝峯命名:StringNumber(大駝峯);stringNumber(小駝峯);string_number;
  • 變量的類型可以隨時改變,根據賦值的類型不同改變爲不同的類型。
  • Python同一個運行環境內存中實際對象內容存在唯一性,在內存空間存在後不會再重新創建,以後的變量都指向這一個地址。

5.str常用函數

轉義符 意義
\ 續行
\n 換行
\\ 反斜槓符

內建函數:

內建函數 作用
capitalize() 字符串首字符大寫
string.count(str, beg=0, end=len(string)) 統計string中字符串中出現str次數
string.find(str,0,len(string)) 在string中查找有沒有str字符串,沒有返回-1;中文可以
format() 格式化字符串
string.index(str, beg=0, end=len(string)) 找不到會拋出異常
string.isalnum() 至少有一個字符,並且都是字符或數字返回True
string.isdigit() 是不是數字字符串
string.islower() 判斷是不是全小寫
string.isspace() 只包含空格則返回True
'str'.join('string') 以指定的字符串str加入到string每一個字符中間
string.lower() 全轉爲小寫
string.lstrip() 去掉左邊的空字符
string.replace(‘old’,'new',count) 替換指定的字符,count是指定一共替換多少次
string.split(str,count) 以str爲分割符進行分割count是可選項,指定分割多少次

6.Number常用函數

python有 math模塊、cmath模塊(複數計算);兩種基本一致,區別是一個cmath用於複數

函數 返回值(描述)
abs(-10) or math.fabs(-10) 取絕對值/返回浮點型絕對值
math.ceil(4.1) 向上取整
math.floor(4.2) 向下取整
cmp(x,y) x,y比較大小,返回 0 (x==y),1(x>y) , -1(x<y)
math.exp(x) 返回自然常量的x次冪
math.log(x,base) 返回對數值,是以base爲底數的,x爲值的對數
max() 返回給定參數的最大值,參數可以是序列
pow(x,y) x**y
round(x,[,n]) 四捨五入,n是保留幾位小數
random.choice(sequence) 從序列中隨機取得一個
random.randrange(1,100,3) 從1,100中取一個3的倍數
random.random() 無參數,隨機生成下一個實數,它在[0,1)範圍內。
math.pi 3.14159265359
math.e 2.71828182846

7.List常用函數

list.count()

錯誤種類和解決辦法

以下錯誤的代碼:

name='張三'
age = 20
sex = '男'
hobby = '抽菸,喝酒,燙頭,學習,娛樂,看電影'
print name+','+age+','+sex+','+hobby
print name,age,sex,hobby

print 'what's your name '
print abc

  • 編碼類型不支持:在頭文件上添加上UTF-8
    這裏寫圖片描述

  • 字符串鏈接時類型不一致報錯:1.添加類型轉換2.可以直接使用“,”來直接輸出;
    這裏寫圖片描述

  • 語法錯誤:‘ ’使用時,在字符串中出現一個相同的,導致翻譯器無法識別後面的。可以用轉義字符:\進行轉義
    這裏寫圖片描述

  • 未定義的變量:使用變量需要先進行定義,如果是字符串需要加上引號或者雙引號:
    這裏寫圖片描述

參考資料:

你都用 Python 來做什麼? —- “很多有意思的應用”
探索 Python(1): Python 的內置數值類型 —- “內存使用講述”
python對象基本原理 —–”創建對象過程”

發佈了33 篇原創文章 · 獲贊 20 · 訪問量 2萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章