python数据类型
Posted Dream_biu
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python数据类型相关的知识,希望对你有一定的参考价值。
一、整数
创建方法
i = 10
i = int(10)
i = int("10",base=2) #“”中是几进制的表示,base是选择要表示的进制,如base=2,用2进制的表示,那么“10”就是2进制的表示码
>>> int.bit_length(10) #求数字用2进制表示最少用几位,如10的二进制:1010,需要4位
4
>>> bin(10)
‘0b1010‘
>>> int.__abs__(-10) #求一个数的绝对值,也可用abs()来表示
10
>>> abs(-10)
10
>>> i.__add__(15) #求i+15的和
25
>>> a = 98
>>> a.__divmod__(10) #相除,得到商和余数组成的元组,在web页面分页的时候会用到。98篇文章,每页10篇,通过这个函数,得到元组,判断第二位,如果是0就是前边那个数的页面就能显示得了,如果不等于0,那么就得前边的数加1页才能显示完整。
(9, 8)
>>> divmod(a,10)
(9, 8)
>>> i.__float__() #把init转换成float类型
10.0
>>> age = 18
>>> age.__format__("10") #格式化输出,10表示占10个字符,不够的用空格补齐
‘ 18‘
>>> age.__neg__() #求整数的负数
-18
总结:
1、创建整数的三种方式
2、__divmod__/__hash__/__index__/
二、长整型
如:1919191919218310238
功能与整数基本相同
三、浮点型
如:3.15
功能与整数基本相同
四、字符串
创建方式
str1 = ‘biubiu‘
str1 = ("biubiu")
功能如下:
>>> name = "didi"
>>> name.capitalize() #首字母大写
‘Didi‘
>>> name.center(20,"*") #20表示占多少个字符,将字符串居中显示,“*”星号表示,如果不足20个字符,则其他用星号来表示。“”双引号中可以是任意字符,如不加,默认用空格表示。
********didi********‘
>>> name
‘sdjfskdfjskjfskjfjsfjjj‘
>>> name.count("s") #看name中包含多少个s
5
>>> name.count("s",0,10) #看name[0:10]中包含多少个s
3
>>> name.endswith("jjj") #以什么什么结尾,如果是以jjj结尾,即返回True,否则False。
True
>>> name.endswith("k")
False
def expandtabs(self, tabsize=8): #把tab键转换成空格,默认是8个空格
如:
name.expandtabs(10) #tab转换成10个空格
>>> name = "test"
>>> name.find(‘e‘) #找字符的下标,如果字符在字符串中存在,则返回下标值,如果不存在,则返回-1.如果查找多个字符,以返回第一个字符的下标,如:name.find(‘didi‘) 返回d的下标
1
>>> name.find("d")
-1
>>> name = "i am {0}, age {1}"
>>> name.format("dididi",22) #字符串格式化
‘i am dididi, age 22‘
>>> name = "i am {jj}, age {kk}"
>>> name.format(jj="dididi",kk=22)
‘i am dididi, age 22‘
>>> list = [222,333] #字符串格式化,列表传参
>>> name = "i m {0},age {1}"
>>> name.format(*list)
‘i m 222,age 333‘
>>> dic = {"ss":123,"dd":456} #字符串格式化,字典传参。
>>> name = "i m {ss},age {dd}"
>>> name.format(**dic)
‘i m 123,age 456‘
以上需要注意的是:传入列表的时候是一个*,传入字典时是两个*
>>>name.index("d") #返回字符的下标,与find类似。唯一的区别是find找不到返回-1,index找不到会报错。
>>> name = "test"
>>> name.isalnum() #字符是否是字母和数字。是则返回True,否则返回False。
True
>>> name = "***"
>>> name.isalnum()
False
>>>name.isalpha() #是否是字母
>>>name.isdigit() #是否是数字
>>>name.islower() #是不是小写
>>>name.isspace() #是不是空格
>>>name.istitle() #是不是标题
>>>name.title() #字符串转换成标题(单词首字母大写)
>>> name = "di di"
>>> name.title()
‘Di Di‘
>>> name = "Di Di" #单词首字母大写,则就是标题
>>> name.istitle()
True
>>>name.isupper() #是否全部大写
>>>name.join() #连接
>>> list = ["di","di"]
>>> "___".join(list)
‘di___di‘
>>> name = "Hello,World!" #左对齐
>>> name.ljust(30,"=")
‘Hello,World!==================‘
>>>s.lower() #字母全部变小写
>>> name = "DiDi1"
>>> name.lower()
‘didi1‘
>>>name.swapcase() #小写变大写,大写变小写
>>>name.lstrip() #左边空白移除
>>>name.partition() #
>>> name = "hello,world"
>>>
>>>
>>> name.partition("ll") #把字符串分成了三部分,ll一部分,ll前边,和后边一部分
(‘he‘, ‘ll‘, ‘o,world‘)
>>>name.replace() #替换
>>> name = "hello,world"
>>> name.replace("l","L") #会找里边所有符合的字符替换
‘heLLo,worLd‘
>>>name.find() #从右边开始找,字符的下标
>>>name.startswith #以什么开始
五、列表
如:[111,222,333]、[‘abc‘,‘bbb‘]
功能如下:
list.append() #追加到列表
>>> li = [11,22,33]
>>> li.count(22) #22在列表中出现的次数
1
>>>li.extend() #扩展列表
>>> li = [11,22,33]
>>> li.extend([‘abd‘,‘jjj‘]) #扩展列表li,添加abd,jjj
>>> li
[11, 22, 33, ‘abd‘, ‘jjj‘]
>>>li.index() #返回第一次出现的这个值的下标,如果这个值不存在,则触发一个异常(报错)
>>>li.insert() #插入
>>> li.insert(0,‘jjjlkjj‘) #在0的下标处插入
>>> li
[‘jjjlkjj‘, 11, 22, 33, ‘abd‘, ‘jjj‘]
>>>li.pop([index]) #删除并返回指定下标的值,如果没有,则最后一个
>>> li
[‘jjjlkjj‘, 11, 22, 33, ‘abd‘, ‘jjj‘]
>>> li.pop() #不指定则删除最后一个,并返回
‘jjj‘
>>> li
[‘jjjlkjj‘, 11, 22, 33, ‘abd‘]
>>> li.pop(0) #指定删除下标为0的值
‘jjjlkjj‘
>>> li
[11, 22, 33, ‘abd‘]
可以这样使用:
>>> name = li.pop()
>>> name
‘abd‘
>>>li.remove(22) #删除指定的值,只删除第一个匹配的
>>> li = [22,22,33,3,333]
>>> li.remove(22)
>>> li
[22, 33, 3, 333]
>>> li
[22, 33, 3, 333]
>>> li.reverse() #把原列表反转
>>> li
[333, 3, 33, 22]
li.sort() #排序,字母按ASCII来比较,数字按大小比较
六、元组
如:(11,22,33)
元组的元素不能被修改,但元组元素的元素是可以修改的。
功能与列表基本相同。
七、字典
如:{"name":"yang","age":12}
功能如下:
dic.clear() #清除内容
dic.copy() #浅拷贝
>>> dic = {‘k1‘:1234}
>>> dic.get("k1") #获取key的value,如果没有这个值,就会返回None,也可以dic.get("k2","ok")这样如果没有这个值,就会返回ok。
1234
>>> dic.get("k2")
>>> print (dic.get("k2") )
None
>>> print (dic.get("k2","ok"))
ok
判断数据类型:
type(name_dic) is dict #是字典则返回True,不是则False
type(name_dic) is int
以上是关于python数据类型的主要内容,如果未能解决你的问题,请参考以下文章