1、Python優(yōu)點(diǎn)
簡(jiǎn)單,優(yōu)雅,明確
強(qiáng)大的模塊第三方庫(kù)
易移植
面向?qū)?/p>
可擴(kuò)展
2、缺點(diǎn)
代碼不能加密
執(zhí)行速度慢
3、變量定義
第一個(gè)字母必須是字母表中的大小寫(xiě),或下劃線。不能以數(shù)字為開(kāi)頭。
1)變量賦值舉例
eg:
>>> x=123
>>> y=x
>>> id(x)
22582176
>>> id(y)
22582176
>>> x=100
>>> id(x)
22580736
>>> id(y)
22582176
>>> tast-date = 1
File "<stdin>", line 1
SyntaxError: can't assign to Operator ; 不能以非大小寫(xiě)下劃線定義變量
>>> tast_date = 1
2)變量值類型
布爾型:true,false
eg:
If True: PRint ‘ddd’
ddd
整型,長(zhǎng)整型,浮點(diǎn)型:
eg:
>>> type(a)
<type 'long'>
>>> a = 2**34
>>> type(a)
<type 'int'>
>>> a=1.34
>>> type(a)
<type 'float'>
>>> a=3
>>> type(a)
<type 'int'>
>>> b=2.3
>>> type(b)
<type 'float'>
字符串:
>>> name='wang'
>>> type(name)
<type 'str'>
序列類型:列表,數(shù)組……
>>> name_list=['wang','bai','gui']
>>> type(name_list)
<type 'list'>
4、運(yùn)算
a) "/" 除法,默認(rèn)取只為整,可跟小數(shù)點(diǎn)。
>>> 3/2
1
>>> 3.0/2
1.5
b) 取被除數(shù)
>>> 10//2
5
>>> 10//4
2
>>> 10//3
3
c) 加減乘除法
+= “c+=a等于c=c+a”
*= “c*=a等于c=c*a”
**= “c**=a等于c=c**a”
d) 與運(yùn)算&:
10和15的與運(yùn)算
1010 1111 è10
10 20
1010 10100 è
>>> 10 & 20
0
>>> 10 & 15
10
e) 或運(yùn)算:
10 20
1010 10100 è 11110 30
>>> 10 | 20
30
5、注釋
單行注釋:#
多行注釋:三個(gè)章引號(hào)’’’ ‘’’或者三個(gè)雙引號(hào)””” “”” ,另一種也可做為格式化輸出
提示:?jiǎn)我?hào)和雙引號(hào)無(wú)區(qū)別
6、理解字符編碼
三種字符級(jí):ASSIC(默認(rèn)一個(gè)字節(jié)) Unicode(兩個(gè)字節(jié)) UTF-8(可變字節(jié),漢字三個(gè)字節(jié))
概述:一個(gè)字節(jié)8位 111111 256個(gè)字,兩個(gè)字節(jié)16位 65536個(gè)字
1024字節(jié)=1KB
1)(ACCIS)
一個(gè)字節(jié)舉例:
>>> ord('a')
97 ; a對(duì)應(yīng)8位的某幾位
>>> ord('A')
65 ;A對(duì)應(yīng)8位的某幾位
相當(dāng)于每個(gè)對(duì)應(yīng)256里個(gè)的各一位,一一對(duì)應(yīng)。
2)UTF-8編碼:可變的
存英文用一個(gè)字節(jié)存,漢字用三個(gè)字節(jié)存。
>>> a='wang'
>>> type(a)
<type 'str'>
>>> a=u'wang'
>>> type(a)
<type 'unicode'>
>>> a
u'wang'
>>> name=u'王小哥'
>>> type (name)
<type 'unicode'>
>>> name
u'/u738b/u67cf/u8d35'
>>> name = "王小哥"
>>> name
'/xe7/x8e/x8b/xe6/x9f/x8f/xe8/xb4/xb5'
>>> name = u"王小哥"
>>> name
u'/u738b/u67cf/u8d35'
3)unicode轉(zhuǎn)換成UTF-8
>>> name = u'王小哥'
>>> name
u'/u738b/u67cf/u8d35'
>>> name.encode('utf-8')
'/xe7/x8e/x8b/xe6/x9f/x8f/xe8/xb4/xb5'
4)UTF-8轉(zhuǎn)換成unicode
>>> wang="王小哥"
>>> wang
'/xe7/x8e/x8b/xe6/x9f/x8f/xe8/xb4/xb5'
>>> wang.decode('utf-8')
u'/u738b/u67cf/u8d35'
提示:
python系統(tǒng)里默認(rèn)是ASSIC碼編碼格式,對(duì)應(yīng)一個(gè)字節(jié),所以在python里面存中文,會(huì)有問(wèn)題,應(yīng)該轉(zhuǎn)換成UTF8編碼格式
#_*_ coding:utf-8 _*_
Name = u”中文”
Print name
提示:
系統(tǒng)中讀到內(nèi)存里默認(rèn)是unicode格式,存到硬盤可以以UTF-8格式存,因?yàn)閡nicode默認(rèn)都是以兩個(gè)字節(jié)存的,占空間。
8、導(dǎo)入模塊
三種導(dǎo)入方式:
1) import modulename
2) from module import sayHi
3) import moduleName as newname
eg:
Import sys
Print sys.argv
或
From sys import argv
Print argv
或
From sys import * ;不建議使用
或
Import multiprocessing as nulte
=========================
eg:
a) 調(diào)用系統(tǒng)命令
>>> import os
>>> os.system('df')
Filesystem 1K-blocks Used Available Use% Mounted on
/dev/sda3 18423556 1691736 15795936 10% /
tmpfs 405824 0 405824 0% /dev/shm
/dev/sda1 198337 29668 158429 16% /boot
0 ;默認(rèn)會(huì)輸出返回上一條指令的返回值
==> 將返回值存入并輸出
>>> cru_dir = os.system('pwd')
/root/python/day01
>>> print cru_dir
0
b) 如何將輸出結(jié)果輸出?
倒入import commands模塊
>>> import commands
>>> res = commands.getstatusoutput('pwd')
>>> res
(0, '/root/python/day01')
3) 倒入import sys模塊
[root@localhost day01]# cat test1.py
import sys
print sys.argv
print sys.argv[2]
[root@localhost day01]# python test1.py a b c
['test1.py', 'a', 'b', 'c']
b
9、用戶交互
1) raw_input
[root@localhost day01]# cat test2.py
#!/usr/bin/env ptyhon
#_*_ coding:utf-8 _*_
name = raw_input('please input your name:')
age = raw_input('age:')
print name , age
[root@localhost day01]# cat test2.py
#!/usr/bin/env ptyhon
#_*_ coding:utf-8 _*_
name = raw_input('please input your name:')
age = raw_input('age:') ;raw_input無(wú)論輸入任何都當(dāng)字符串來(lái)解釋
job = raw_input('job:') ;可通過(guò)int(raw_input(‘age:’)) 轉(zhuǎn)換成數(shù)字,或直接用input(‘age:’),注意:imput后面跟的是原生態(tài),之前是什么,就是什么,定要指明是什么類型等,不然會(huì)有錯(cuò)誤。
salary = raw_input('salary:')
print '''
name: %s
age : %s
job : %s ;%s代表字符串,%d代表數(shù)字,%f代表浮點(diǎn)數(shù)
salary : %s
-----------------
''' %(name,age,job,salary)
Imput舉例:
[root@localhost day01]# vim test2.py
#!/usr/bin/env ptyhon
#_*_ coding:utf-8 _*_
name = raw_input('please input your name:')
age = input('age:')
job = raw_input('job:')
salary = raw_input('salary:')
print type(age)
print '''
name: %s
age : %s
job : %s
salary : %s
-----------------
''' %(name,age,job,salary)
[root@localhost day01]# python test2.py
please input your name:wangbaigui
age:28
job:it
salary:2w
<type 'int'>
name: wangbaigui
age : 28
job : it
salary : 2w
-----------------
[root@localhost day01]# vim test2.py
#!/usr/bin/env ptyhon
#_*_ coding:utf-8 _*_
AGE = 28
name = raw_input('please input your name:')
age = input('age:')
job = raw_input('job:')
salary = raw_input('salary:')
print type(age)
print '''
name: %s
age : %s
job : %s
salary : %s
-----------------
''' %(name,age,job,salary)
[root@localhost day01]# python test2.py
please input your name:wangbaigui
age:AGE
job:it
salary:3w
<type 'int'>
name: wangbaigui
age : 28
job : it
salary : 3w
10、流程控制
1) if… else…舉例:
#!/usr/bin/env ptyhon
#_*_ coding:utf-8 _*_
name = raw_input('please input your name:')
age = input('age:')
job = raw_input('job:')
salary = raw_input('salary:')
if age > 30:
meg = 'you are so old...'
elif age >20:
meg = ‘…’
else:
meg = 'you are so yongest...'
print '''
name: %s
age : %d
job : %s
salary : %s
-----------------
%s
''' % (name,age,job,salary,meg)
2) for循環(huán)
[root@localhost day01]# cat test4.py
#!/usr/bin/env ptyhon
#_*_ coding:utf-8 _*_
name = raw_input('please input your name:')
job = raw_input('job:')
salary = raw_input('salary:')
relea_age = 28
for i in range(10):
age = input('age:')
if age >30:
meg = "think small..."
elif age == 28:
meg = "good!,you are right."
break
else:
meg = "go to think"
print meg
print "you have only %s times to trye" %(9 - i)
print '''
name: %s
age : %d
job : %s
salary : %s
-----------------
%s
''' % (name,age,job,salary,meg)
3)while循環(huán)
[root@localhost day01]# cat test5.py
slect_num = input('which num you want:')
count = 0
while count < 100:
if count == slect_num:
print 'you slect right:%s'%(slect_num)
choice = raw_input('you want go on or contine (Y/N)')
if choice == 'Y':
while True:
slect_num = input('which num you want agan:')
if slect_num <= count:
print "lookup alred past..,ples input newest num!"
else:
break
continue
else:
break
else:
print 'lookup',count
count +=1
else:
print 'Alread more then 100.. so Bye!'
新聞熱點(diǎn)
疑難解答
圖片精選
網(wǎng)友關(guān)注