首页 > 代码库 > Python学习(一)——数据类型

Python学习(一)——数据类型

在大学学过一点python,只学了语法,关于实际应用却没怎么用过。现在用一些python的脚本来模拟webservices,挺好用的。这个语言,还是要好好学习学习了。

目前看着教材来的,这本教材,好像还是当年看得那本,《Python学习手册(第四版)》,不过现在用的是eclipse的集成环境,写python也方便了很多。

数学部分的示例:

import mathprint math.piprint math.sqrt(5)import randomprint random.random()

字符串部分的示例:

S=Spamprint len(S)print S[0]print S[1:3]print S+abdsprint S*8print S.find(a)print S.replace(pa, xx)print Sline=aaa,bbb,ccc,dddprint line.split(,)

列表示例:

L=[123,spm,1.23]print len(L)print L[0]print L[:-1]print L+[4,5,6,7]L.append("NI") #appendprint LL.pop(3) #removeprint Lprint ===============M=[aa,bb,cc]M.sort()print MM.reverse()print M

列表解析示例:

M=[[1,2,3],   [4,5,6],   [7,8,9]   ]print Mprint M[1]print M[2]print M[1][2]print ==============col2=[row[1] for row in M]print col2col3=[row[1] for row in M if row[1]%2==0]print col3dialog=[M[i][i] for i in [0,1,2]]print dialogdoubles=[c*2 for c in spam]print doublesprint =====================G=(sum(row) for row in M)print next(G)print next(G)print next(G)print list(map(sum,M))

字典示例:

D={food:spam,quanlity:4,color:pink}print D[food]D[quanlity]+=1print Dprint ======================N={}N[name]=jobN[age]=40print Nprint ======================rec={name:{first:bob,last:smith},job:[dev,mgr],age:40}print rec[name]print rec[name][first]rec[job].append(pro)print rec

这个字典数据和json很相似。

for和while排序示例:

D={a:1,b:2,c:3}Ks=list(D.keys())print KsKs.sort()print Ksfor key in Ks:    print key,"=>",D[key]print =========for==============E={a:1,b:2,c:3}for key in sorted(E):    print key ,=> ,E[key]    print ==========for==================for c in spam:    print(c.upper())    print =========while==================x=4while x>0:    print(spam!*x)    x-=1;

元组示例:

‘‘‘@author: Administrator‘‘‘T=(1,2,3,4)print len(T)T+(5,6)print Tprint T[0]print T.index(4)print T.count(4)print =======================T=(spam,3.0,[11,22,33])print T[0]print T[2][1]

文件示例:

‘‘‘@author: Administrator‘‘‘f=open(data.txt,w)f.write(hello\n)f.write(world\n)f.close()print =======================f=open(data.txt)text=f.read()print textprint text.split()

这个在当前目录下会生成一个data.txt文件。

还有一个set的类型:

‘‘‘@author: Administrator‘‘‘X=set(spam)Y={h,a,m}print X,Yprint X&Yprint X|Yprint X-Yprint {x*2 for x in [1,2,3,4]}print ============ number ===========print 1 / 3print (1/3)+(2/3)print 1>2

以上类型差不多都涉及了一些,字符串和其他语言格式都一样。列表是用[]符号来标识的,里面可以是数字,也可以是字符串等。字典是{}标识的,里面是键值对,和java中的map是类似的,不过它的值是可以扩展的,采用列表,赋多个值。元组是()标识的,重要的是元组中元素是不可变的。然后还有一个set类型的,也是用{}标识的,和字典不同的是,这个不是键值对的结构。文件类型和他们差别很大的,容易理解。

最后还有面向对象编写的类,因为是python的,所以第一次看,觉得不适应。

‘‘‘@author: Administrator‘‘‘class Worker:    def __init__(self,name,pay):        self.name=name        self.pay=pay    def lastName(self):        return self.name.split()[-1]    def giveRaise(self,percent):        self.pay*=(1.0+percent)#调用bob=Worker(bob,5000)lastname=bob.lastName()print lastnamebob.giveRaise(10)print bob.pay

 

Python学习(一)——数据类型