Python安裝
在linux系統上安裝Python3.X
安裝依賴:
yum -y install gcc zlib zlib-devel xz
下載Python安裝包
wget https://www.python.org/ftp/python/3.6.3/Python-3.6.3.tar.xz
解壓並編譯安裝
tar -xf Python-3.6.2.tar.xzcd Python-3.6.2./configuremake && make install
修改系統中python軟連接
ln -sf /usr/local/bin/python3 /usr/bin/python
[root@bogon tool]# ll /usr/bin/pythonlrwxrwxrwx 1 root root 22 3月 22 11:09 /usr/bin/python -> /usr/local/bin/python3
爲保證yum正常使用,修改指定yum命令所使用的python版本(要根據/usr/bin/目錄下python原來的版本修改)
sed -i '1s@[email protected]@' /usr/bin/yum
文件頭
#!/usr/bin/env python# -*- coding: utf-8 -*-
變量
變量名稱不允許使用數字開頭,不允許有空格,不允許有*號等特殊符號
age_of_dzm = 18
#上面這是推薦的變量名稱
AGE_OF_DZM = 18
#上面這種全部使用大寫字母的方式不會報錯,但約定俗成一般表示常量,Python裏沒有嚴格意義上的常量
#引用變量
age_of_dzm = 18print(age_of_dzm)18print('age_of_dzm')age_of_dzm
#由此可見,加了單引號後print出的是字符串本身,並沒有引用變量
多引號的用途
'''這裏的多引號表示多行註釋(我是第二行)'''
#多引號也可以用於定義變量時定義一多行內容
info = '''-------info---------name : dzmage : 18sex: male-------end---------'''
#身份運算
is比較的是id而==比較的是值
#賦值
#交叉賦值
m=1n=2m,n=n,mprint(m)print(n)
#解壓
#可以解壓元組,列表,字典(key)
l=[1,2,3,4]a,b,c,d=lprint(a,b,c,d)#示例1#只要第一個值和最後一個值l=[1,2,3,4]a,b,c,d=l(a,_,_,d)=lprint(a,d)#也可以(a,*_,d)=l*_代表無數個_#示例2t=(10,20,30,40,50,60)x,*_,z=tprint(x,z)10 60
#格式化輸出
#第一種
name=input('請輸入您的用戶名: ')password=input('請輸入您的密碼: ')print('您的用戶名是:%s ,您的密碼是:%s' %(name,password))
#第二種
name=input('請輸入你的名字:')age=int(input('請輸入你的年齡:'))sex=input('請輸入你的性別:')job=input('請輸入你的工作:')msg='''------------ info of %s ----------Name : %sAge : %dSex : %sJob : %s------------- end -----------------''' %(name,name,age,sex,job)print(msg)
基本數據類型
數字
int整型
一般表示整數
float浮點型
一般表示帶小數點的數字,如體重等
字符串
#在python中,加了引號的字符就是字符串類型name='dzm’
#字符串還能進行拼接,且只能是字符串之間的相加或相乘
name = 'dzm'age = '18'print(name+age)dzm18
原始字符串
原始字符串不以特殊方式處理反斜槓,在例如DOS路徑這種情況下很有用。
舉例:
print("C:\nowhere") #此時反斜槓有特殊含義C:owhereprint("C:\\nowhere") #對反斜槓本身進行轉義C:\nowhere
這很好,但對於很長的路徑以爲着將需要使用大量的反斜槓
這樣的情況下原始字符串就排上用場了
print(r'C:\nowhere')C:\nowhere
注意:
原始字符串不能以單個反斜槓結尾,如果要指定以反斜槓結尾的原始字符(比如DOS路徑),可以將反斜槓作爲單獨的字符。
舉例:
print(r'C:\nowhere')C:\nowhere
列表
在[]內用逗號分隔,可以存放n個任意類型的值
name_list = ['dzm','egon','alex']print(name_list[1])egon
#列表嵌套與取值
name_list = ['dzm','egon','alex',[18,19,20]]print(name_list[3][0])0
name_list = [['dzm',[18,19]],['egon',[20,21]]]print(name_list[1][1][0])20
dzm = ['dzm',18]gq = ['gq',19]database = [dzm, gq]database[['dzm', 18], ['gq', 19]]
字典
#在{}內用逗號分隔,可以存放多個key:value的值,value可以是任意類型
user = {'name':'dzm','age':'18','sex':'male'}print(user['name'])dzm
#字典的嵌套與取值
user = { 'name':'dzm', 'age':[18,19,20], 'sex':'male'}print(user['age'][2])20
user = { 'name':{'name1':'dzm', 'name2':'egon', 'name3':'alex' }, 'age':[18,19,20], 'sex':'male'}print(user['name']['name3'])alex
#由此可見,字典裏還可以套列表和字典
#重點,可變與不可變類型
#1.可變類型:在id不變的情況下,value可以變,則稱爲可變類型,如列表,字典
#2. 不可變類型:value一旦改變,id也改變,則稱爲不可變類型(id變,意味着創建了新的內存空間)
#for循環
#for
for i in range(5): print(i)else: print('ok')01234ok
#上面這個例子顯示,如果for循環沒有被break打斷那麼執行else的內容
#如果上面的for循環觸發了break則下面的else不會執行
if
not與邏輯判斷句if連用,代表not後面的表達式爲False的時候,執行冒號後面的語句。比如:
a = Falseif not a: (這裏因爲a是False,所以not a就是True) print "hello"
可以用來判斷用戶輸入的是否爲空
在python中 None, False, 空字符串"", 0, 空列表[], 空字典{}, 空元組()都相當於False
使用if not x這種寫法的前提是:必須清楚x等於None, False, 空字符串"", 0, 空列表[], 空字典{}, 空元組()時對你的判斷沒有影響才行。
判斷變量是否爲None下面的寫法更清晰
if not x is None
不等於空可以這樣寫
if line != '': print()
如需更多的瞭解加入python裙906407826嗷~🤭