博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python(二)数据类型
阅读量:4952 次
发布时间:2019-06-12

本文共 4174 字,大约阅读时间需要 13 分钟。

一、整数

创建方法

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

 

 

 

 

 

 

 

 

 

 

 

转载于:https://www.cnblogs.com/yangruizeng/p/5514258.html

你可能感兴趣的文章
旅行 (Standard IO)
查看>>
BigData10 Collections集合工具类 Arrays 数组工具类
查看>>
node + exrepss 实现一个简单的图片爬虫网页
查看>>
【设计模式】六大设计原则总结
查看>>
Elasticsearch入门
查看>>
UEditor常用设置函数记录
查看>>
PHP高效率写法(详解原因)
查看>>
使用HttpUrlConnection连接网络的例程
查看>>
flask-restful在解析的请求一定要传content-type:application/json吗?答:其实不需要!...
查看>>
Dynamic CRM 2015学习笔记(5)CRM 2015 导入 OData Query Designer 解决方案
查看>>
用快递100接口查询各快递物流信息
查看>>
面试题 小结 转载
查看>>
CentOS上安装spark standalone mode(转载)
查看>>
BZOJ4550 小奇的博弈 【Nimk游戏 + dp + 组合数】
查看>>
BZOJ4916 神犇和蒟蒻 【欧拉函数 + 杜教筛】
查看>>
android开发------响应用户事件
查看>>
.net学习之委托和事件
查看>>
iOS热更新实现方式
查看>>
Android UI:看看Google官方自定义带旋转动画的ImageView-----RotateImageView怎么写(附 图片淡入淡...)...
查看>>
Swift - 多层无缝循环滚动背景(SpriteKit游戏开发)
查看>>