python数据类型(一)

一.python中的数据类型

python使用对象模型来存储数据,每一个数据类型都有一个内置的类,每新建一个数据,实际就是在初始化生成一个对象,即所有数据都是对象。
对象三个特性
(1) 身份:内存地址,可以用id()获取
(2) 类型:决定了该对象可以保存什么类型值,可执行何种操作,需遵循什么规则,可用type()获取
(3) 值:对象保存的真实数据
这里的字符串、数字、列表等都是数据类型(用来描述某种状态或者特性)除此之外还有很多其他数据,处理不同的数据就需要定义不同的数据类型

标准类型其他类型
数字 类型type
字符串Null
列表文件
元组集合
字典函数/方法
模块

二.数字

1. 定义:

a = 1

2. 特性:

(1)只能存放一个值
(2)一经定义,不可更改
(3)直接访问

3.分类:

(1)整型
python的整型相当于C中的long型,Python中的整数可以用十进制,八进制,十六进制表示。
10进制——》2进制:bin(10)==0b1010
10进制——》8进制:oct(10)==0o12
10进制——》16进制:hex(10)==0xa
python2和python3在整型上的区别:
python2:分为整型和长整型,数字尾部加有L的为长整型。在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
python3:整形长度无限制

(2)长整型long(python2)
(3)布尔值bool
True(1)和False(0)
(4)浮点数bloat
Python的浮点数就是数学中的小数,类似C语言中的double。
在运算中,整数与浮点数运算的结果是浮点数。
浮点数也就是小数,之所以称为浮点数,是因为按照科学记数法表示时,一个浮点数的小数点位置是可变的,比如,1.23*109和12.3*108是相等的。
浮点数可以用数学写法,如1.23,3.14,-9.01,等等。但是对于很大或很小的浮点数,就必须用科学计数法表示,把10用e替代,1.23*109就是1.23e9,或者12.3e8,0.000012可以写成1.2e-5,等等。
整数和浮点数在计算机内部存储的方式是不同的,整数运算永远是精确的而浮点数运算则可能会有四舍五入的误差。
(5)复数complex
复数由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。
注意:虚数部分的字母j大小写都可以

三.字符串

1. 定义:

字符串是一个有序的字符的集合,用于存储和表示基本的文本信息,‘’或“”或‘’‘ ’‘’中间包含的内容称之为字符串。

2. 特性:

(1) 只能存放一个值
(2) 不可变
(3) 按照从左到右的顺序定义字符集合,下标从0开始顺序访问,有序
补充:
(1) 字符串的单引号和双引号都无法取消特殊字符的含义,如果想让引号内所有字符均取消特殊意义,在引号前面加r,如name=r’l\thf’
(2) unicode字符串与r连用必须在r前面,如name=ur’l\thf’

3. 字符串常用操作:

移除两端空白: str.strip()
分割: str.split(‘;’) #以;为分隔符
长度: len(str)
索引: str[n]
切片: str[0:5:2] #str[0],str[2],str[4]

4.字符串其他操作:

(1)format格式化:

msg = ‘Name:{},age{},sex{}’
msg.format(‘tom’,18,’male’) #括号内的值依次填充到上面大括号中,少了会报错,多了则只填充前3个,后面的值无意义。

msg = ‘Name:{0},age{1},sex{0}’  #取format()中对应索引的值

msg = ‘Name:{x},age{y},sex{z}’  
msg.format(x=‘tom’,y=18,z=’male’) #x,y,z可以打乱顺序 

(2)startswith和endswith:

str.startwith()  #判断是否以()中的字符串开头
str.endswith()  #判断是否以()中的字符串结尾

(3)upper和lower:

str.upper() #将字符串中字母全部替换为大写形式
str.lower() #将字符串中字母全部替换小写形式

(4)center、ljust和rjust:

str.center(10,’*’) #以str中字符为中心,填充’*’,使长度变为10
str.ljust(10,’*’)  #str中字符左对齐,填充’*’,使长度变为10
str.rjust(10,’*’)  #str中字符右对齐,填充’*’,使长度变为10

(5)count计数:

str.count(‘h’,0,3)  #计算str字符串中’h’字符的数量

(6)find寻找字符:

str.find(‘h’) #寻找str字符串中’h’字符的位置,返回第一个’h’字符的索引

(7)index索引:

str.index(‘h’) #返回str字符串中第一个’h’字符的索引,若没有’h’会报错

(8)replace替换:

str.replace(‘d’,’D’) #将str字符串中所有’d’换为’D’

(9)title标题化:

str.title() #将str中所有单词的首字母换为大写字母

(10)capitalize:

str.capitalize() #将str中的首字母换为大写字母

(11)isdigit、isupper、islower、isspace和istitle:

str.isdigit() #判断str中字符串是否是整数
str.isupper() #判断str中字符串是否全都是大写字母(忽略数字)
str.islower() #判断str中字符串是否全都是小写字母(忽略数字)
str.isspace() #判断str中字符串是否全都是空格
str.istitle() #判断str中字符串是否是标题格式(单词首字母大写)
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值