当前位置: 首页 > news >正文

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

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

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

数学部分的示例:

import math
print math.pi
print math.sqrt(5)
import random
print random.random()

字符串部分的示例:

S='Spam'
print len(S)
print S[0]
print S[1:3]
print S+'abds'
print S*8
print S.find('a')
print S.replace('pa', 'xx')
print S
line='aaa,bbb,ccc,ddd'
print 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") #append
print L
L.pop(3) #remove
print L
print '==============='
M=['aa','bb','cc']
M.sort()
print M
M.reverse()
print M

列表解析示例:

M=[[1,2,3],
   [4,5,6],
   [7,8,9]
   ]
print M
print M[1]
print M[2]
print M[1][2]
print '=============='
col2=[row[1] for row in M]
print col2
col3=[row[1] for row in M if row[1]%2==0]
print col3
dialog=[M[i][i] for i in [0,1,2]]
print dialog
doubles=[c*2 for c in 'spam']
print doubles

print '====================='
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']+=1
print D

print '======================'
N={}
N['name']='job'
N['age']=40
print N

print '======================'
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 Ks
Ks.sort()
print Ks
for 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=4
while x>0:
    print('spam!'*x)
    x-=1;

元组示例:

'''

@author: Administrator
'''
T=(1,2,3,4)
print len(T)
T+(5,6)
print T
print 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 text
print text.split()

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

还有一个set的类型:

'''

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

print '============ number ==========='
print 1 / 3
print (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 lastname
bob.giveRaise(10)
print bob.pay

 

转载于:https://www.cnblogs.com/juepei/p/3937861.html

相关文章:

  • 定制微型Linux系统(续)
  • Redis进阶 ----事务
  • 【Spark亚太研究院-构建Spark集群-配置Hadoop伪分布模式并运行Wordcount(2)
  • 《设计模式系列》---组合模式
  • Exchange 2013sp1邮件系统部署-(九)
  • 点与不规则图形关系判断
  • Android开发之初识Camera图像采集
  • jQuery找到GridView控件ItemTemplate模版内的控件
  • 禁止执行某些讨厌的程序,如tadb.exe
  • 一个很好地免费域名dot.tk
  • 解决问题是根本,多余的话不说(转)
  • cocos2d-x Touch触屏事件
  • Unity 游戏开发技术学生作品展2014版
  • 你好,C++(6)2.3 C++兵器谱
  • JavaScript学习笔记(九)---- BOM
  • IE9 : DOM Exception: INVALID_CHARACTER_ERR (5)
  • 「前端」从UglifyJSPlugin强制开启css压缩探究webpack插件运行机制
  • avalon2.2的VM生成过程
  • DataBase in Android
  • Docker 笔记(2):Dockerfile
  • HTML5新特性总结
  • MySQL Access denied for user 'root'@'localhost' 解决方法
  • spark本地环境的搭建到运行第一个spark程序
  • vue-router 实现分析
  • 基于遗传算法的优化问题求解
  • 聊聊flink的BlobWriter
  • 普通函数和构造函数的区别
  • 前端攻城师
  • 我感觉这是史上最牛的防sql注入方法类
  • #QT(TCP网络编程-服务端)
  • ( 10 )MySQL中的外键
  • (10)STL算法之搜索(二) 二分查找
  • (10)工业界推荐系统-小红书推荐场景及内部实践【排序模型的特征】
  • (17)Hive ——MR任务的map与reduce个数由什么决定?
  • (1综述)从零开始的嵌入式图像图像处理(PI+QT+OpenCV)实战演练
  • (android 地图实战开发)3 在地图上显示当前位置和自定义银行位置
  • (done) NLP “bag-of-words“ 方法 (带有二元分类和多元分类两个例子)词袋模型、BoW
  • (LeetCode 49)Anagrams
  • (ZT)一个美国文科博士的YardLife
  • (八)Spring源码解析:Spring MVC
  • (附源码)springboot高校宿舍交电费系统 毕业设计031552
  • (企业 / 公司项目)前端使用pingyin-pro将汉字转成拼音
  • (十七)devops持续集成开发——使用jenkins流水线pipeline方式发布一个微服务项目
  • (小白学Java)Java简介和基本配置
  • (续)使用Django搭建一个完整的项目(Centos7+Nginx)
  • (一)【Jmeter】JDK及Jmeter的安装部署及简单配置
  • (转) ns2/nam与nam实现相关的文件
  • (转)德国人的记事本
  • (转载)从 Java 代码到 Java 堆
  • ***通过什么方式***网吧
  • .NET 5种线程安全集合
  • .NET Compact Framework 3.5 支持 WCF 的子集
  • .vimrc php,修改home目录下的.vimrc文件,vim配置php高亮显示
  • /dev/sda2 is mounted; will not make a filesystem here!
  • /etc/skel 目录作用