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(二)数据类型的更多相关文章
- python自学笔记(二)python基本数据类型之字符串处理
一.数据类型的组成分3部分:身份.类型.值 身份:id方法来看它的唯一标识符,内存地址靠这个查看 类型:type方法查看 值:数据项 二.常用基本数据类型 int 整型 boolean 布尔型 str ...
- python基本数据类型之字符串(二)
python基本数据类型之字符串(二) 替换方法 python中字符串的替换方法主要有:center.rjust\ljust.expandtabs.format\format_map(格式化).str ...
- python 基本数据类型分析
在python中,一切都是对象!对象由类创建而来,对象所拥有的功能都来自于类.在本节中,我们了解一下python基本数据类型对象具有哪些功能,我们平常是怎么使用的. 对于python,一切事物都是对象 ...
- python常用数据类型内置方法介绍
熟练掌握python常用数据类型内置方法是每个初学者必须具备的内功. 下面介绍了python常用的集中数据类型及其方法,点开源代码,其中对主要方法都进行了中文注释. 一.整型 a = 100 a.xx ...
- Python入门-数据类型
一.变量 1)变量定义 name = 100(name是变量名 = 号是赋值号100是变量的值) 2)变量赋值 直接赋值 a=1 链式赋值 a=b=c=1 序列解包赋值 a,b,c = 1,2,3 ...
- Python基础:八、python基本数据类型
一.什么是数据类型? 我们人类可以很容易的分清数字与字符的区别,但是计算机并不能,计算机虽然很强大,但从某种角度上来看又很傻,除非你明确告诉它,"1"是数字,"壹&quo ...
- python之数据类型详解
python之数据类型详解 二.列表list (可以存储多个值)(列表内数字不需要加引号) sort s1=[','!'] # s1.sort() # print(s1) -->['!', ' ...
- python基本数据类型之字符串(四)
python基本数据类型之字符串(四) 判断方法 python中有一类用来判断字符串形式的方法,该类方法有两个特点:(1)方法名都是is开头(除了startswith和endswith):(2)返回值 ...
- Python的数据类型和运算
一.Python数据类型 变量所指向的值是有自己独特的数据类型的,这些数据类型可能代表不同的数据,在Python中,主要有以下几种数据类型: 整形(int) 在计算机中,整数的位数其实是有范围的,并没 ...
随机推荐
- 使用putty组件向服务器上传或下载文件
基于SSH的连接 上传文件: pscp -P 28661(portNum) -pw password sourceFilePath user@serverIP:destinationFilePath ...
- 深入分析 Java 中的中文编码问题
登录 (或注册) 中文 IBM 技术主题 软件下载 社区 技术讲座 打印本页面 用电子邮件发送本页面 新浪微博 人人网 腾讯微博 搜狐微博 网易微博 Digg Facebook Twitter Del ...
- 【7集iCore3基础视频】7-3 iCore3硬件介绍
iCore3原理图介绍: 高清源视频:http://pan.baidu.com/s/1gfbhuE3%20密码:xnbc iCore3 购买链接:https://item.taobao.com/ite ...
- centos安装vsftp
yum install -y vsftpd chkconfig vsftpd on 配置问价在/etc/vsftpd/下面 chroot_list 默认没有 必须自己建立 vi /etc/vsftpd ...
- python中raw_input输入数字问题
如果按照下面方式,则无论你输入什么,都会打印12,因为raw_input接受的输入是按照字符串处理的 num = raw_input('please enter a num:') if num > ...
- Node.js 使用 soap 模块请求 WebService 服务接口
项目开发中需要请求webservice服务,前端主要使用node.js 作为运行环境,因此可以使用soap进行请求. 使用SOAP请求webservice服务的流程如下: 1.进入项目目录,安装 so ...
- 利用insert,update和delete注入获取数据
0x00 简介 利用SQL注入获取数据库数据,利用的方法可以大致分为联合查询.报错.布尔盲注以及延时注入,通常这些方法都是基于select查询语句中的SQL注射点来实现的.那么,当我们发现了一个基于i ...
- 录制简单的自动化测试工具SlikMobile初体验
今天朋友推荐了款自动化测试工具SlikMobile,下载了个试用了下,感觉还是很容易入门和上手的,感觉和testin的工具差不多,跨平台,多语言支持,支持图片.文本和Native Class三种对象方 ...
- Java -- 在Eclipse上使用Spring
在.NET上用的VS.NET+Spring.net+Nhibernate,到了Java平台上,自然对应着Eclipse+Spring+Hibernate.上一篇文章介绍了如何在Eclipse上使用Hi ...
- WGS84坐标和UTM坐标的转换
如题.做了一个Demo,主要是把最后面的参考资料1里面的脚本改成了C语言版本的. 代码: #ifndef __COORCONV_H__ #define __COORCONV_H__ #include ...