一、数据类型
1、数字
整型
Python的整型相当于C中的long型,Python中的整数可以用十进制,八进制,十六进制表示。
>>> 10
10 --------->默认十进制>>> oct(10)'012' --------->八进制表示整数时,数值前面要加上一个前缀“0”>>> hex(10)'0xa' --------->十六进制表示整数时,数字前面要加上前缀0X或0x
python2.*与python3.*关于整型的区别
python2.*
在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
python3.*整形长度无限制
长整型
python2.*:
如何区分长整型和整型数值呢?
通常的做法是在数字尾部加上一个大写字母L或小写字母l以表示该整数是长整型的,例如:
a = 9223372036854775808L
python3.*
长整型,整型统一归为整型
浮点数float:
浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时。
对于很大或很小的浮点数,
就必须用科学计数法表示,把10用e替代,1.23*109就是1.23e9,或者12.3e8,0.000012
可以写成1.2e-5,等等。
复数:
复数是由一个实数和一个虚数组合构成,表示为:x+yj
一个负数时一对有序浮点数(x,y),其中x是实数部分,y是虚数部分。
Python语言中有关负数的概念:1、虚数不能单独存在,它们总是和一个值为0.0的实数部分一起构成一个复数2、复数由实数部分和虚数部分构成3、表示虚数的语法:real+imagej4、实数部分和虚数部分都是浮点数5、虚数部分必须有后缀j或J
复数的内建属性:
复数对象拥有数据属性,分别为该复数的实部和虚部。
复数还拥有conjugate方法,调用它可以返回该复数的共轭复数对象。
复数属性:real(复数的实部)、imag(复数的虚部)、conjugate()(返回复数的共轭复数)'''
class Complex(object):'''''创建一个静态属性用来记录类版本号'''version=1.0
'''''创建个复数类,用于操作和初始化复数'''def __init__(self,rel=15,img=15j):
self.realPart=rel
self.imagPart=img
#创建复数
def creatComplex(self):return self.realPart+self.imagPart
#获取输入数字部分的虚部
def getImg(self):
#把虚部转换成字符串
img=str(self.imagPart)
#对字符串进行切片操作获取数字部分
img=img[:-1]return float(img)
def test():
print"run test..........."com=Complex()
Cplex=com.creatComplex()if Cplex.imag==com.getImg():
print com.getImg()else:
passif Cplex.real==com.realPart:
print com.realPartelse:
pass
#原复数
print"the religion complex is :",Cplex
#求取共轭复数
print"the conjugate complex is :",Cplex.conjugate()if __name__=="__main__":
test()
数字相关内建函数
2、字符串
定义:它是一个有序的字符的集合,用于存储和表示基本的文本信息,‘’或“”或‘’‘ ’‘’中间包含的内容称之为字符串
特性:
1.只能存放一个值
2.不可变
3.按照从左到右的顺序定义字符集合,下标从0开始顺序访问,有序
补充:
1.字符串的单引号和双引号都无法取消特殊字符的含义,如果想让引号内所有字符均取消特殊意义,在引号前面加r,如name=r'lhf'
2.unicode字符串与r连用必需在r前面,如name=ur'lhf'
字符串常用操作
import time
time.sleep(3)#延迟三秒输出
bin() #十进制数转八进制
hex()#十进制数转十六进制
range()函数:可以生成一个整数序列,
range(5)生成的序列是从0开始小于5的整数
range(1,10)生产1-9的整数序列
range(1,10,2) 生成1-9,步长为2的整数序列,即1、3、5、7、9
type()查看数据类型
print()=print('
')#默认换行输出
print(' ')#以空格结尾,不换行输出
字符串操作常见函数
x='hello world'
print(x[0])#[]按索引号取值,正向取值0开始,反向取值从-1开始
print(x[1:5])#取索引号为1-4取值
[0:5:2]#对字符串索引号为0—4的字符按步长为2进行切片
strip() #移除空白
strip('*')#按照*号剪切字符,**egon** ==> egon
len()#计算字符串长度
index() #查看某一字符的索引号,一般以[]操作
[0:5:2]#对字符串索引号为0—4的字符按步长为2进行切片
capitalize()#字符串首字母大写
center(10,'*') #字符串长度为10,居中,不足位数*补齐
ljust#左对齐
print(x.ljust(10,'*'))#字符串长度为10,左对齐,不足位数*补齐
rjust#右对齐
count() #统计某字符出现次数 空格也算字符
count('a',0,5)#统计字符a在索引号为0-4范围内出现的次数
endswith()#判断字符串以什么字符结尾
endswith('a')#判断字符串是否以字符a结尾
startswith()#判断字符串以什么字符开头
startswith('a')##判断字符串是否以字符a开头
find()#查找,即判断某字符是否在字符串中
find('a')#判断字符a是否在字符串中,并返回索引号,返回值为负数,表示该字符不在字符串中
format()#格式化字符串,类似%s,传递值能多不能少
format('egon','18','male')#将'egon','18','male'值依次传递给字符串
# msg='Name:{x},age:{y},sex:{z}'
# print(msg.format(y=18,x='egon',z='male'))
isdigit()#判断字符串是否为数字
res.isdigit()#判断字符串res是否为数字,返回值为True或者Fals
replace()#将某字符替换为另一字符
replace('a','A',2)#将字符串中a替换成A,替换2次
msg='hello alex'
# print(msg.replace('x','X'))
# print(msg.replace('alex','SB'))
# print(msg.replace('l','A'))
# print(msg.replace('l','A',1))
# print(msg.replace('l','A',2))
split() #默认以空格进行分隔
split(':')#将字符串以冒号进行分割
字符串操作其他函数
upper()#将字符串所有字母转换为大写
isupper #判断是否全为大写,返回值True或者Fals
lower#将字符串所有字母转换为小写
islower#判断是否全为小写写,返回值True或者Fals
isspace#判断字符串是否全为空格,返回值True或者Fals
istitle #判断首字是否大写
title()#字符串首字母大写
swapcase() #大小写转换
python中str函数isdigit、isdecimal、isnumeric的区别
isdigit()
True: Unicode数字,byte数字(单字节),全角数字(双字节),罗马数字
False: 汉字数字
Error: 无
isdecimal()
True: Unicode数字,,全角数字(双字节)
False: 罗马数字,汉字数字
Error: byte数字(单字节)
isnumeric()
True: Unicode数字,全角数字(双字节),罗马数字,汉字数字
False: 无
Error: byte数字(单字节)