python数据类型及其详解
一、数据类型介绍
1.字符串(string)
三种类型:单引号,双引号,三引号
a = 'jam'
b = "JamHsiao"
c = '''JAMHSIAO'''
print(type(a),type(b),type(c))
注意:字符串只能与字符串相加
a = 'Jam'
b = "Hsiao"
print(a+b)
2.整型(int)
a = 30
print(type(a))
3.浮点型(float)
a = 30.0
print(type(a))
4.元组(tuple)里面可以是任意数据类型
t1 = (1,2,[1,2],(1,2,3))
print(type(t1))
5.列表(list)里面同元组一样,可以是任意数据类型
l1 = [1,2,[1,2],(1,2,3)]
print(type(l1))
6.字典(dict)在记录一个人的姓名、身高、年龄等的时候使用,以关键字和数值组合的类型
info = {'name':'萧敬腾', #每行结束必须有',',key和walue之间用':'连接
'age':32,
'high':171
}
print(type(info))
7.集合(set)l里面可以是出列表之外的任意数据类型
s1 = {1,2,'h','a',(1,2,3)}
print(type(info))
8.布尔(bool)
print(type(True))
print(type(False))
二、数据类型详解
1.字符串详解
1.1isupper:判断字符串是否是大写
str1='HELLO,WORLD'
print(str1.isupper())
1.2islower:判断字符串是否是小写
str1='hello,world'
print(str1.islower())
1.3isspace:判断字符串是否是纯空格
str1=' '
print(str1.isspace())
1.4isdigit:判断字符串是否是整型
str1='330'
print(str1.isdigit())
1.5isalnum:判断字符串是否是数字或字母(不能有特殊字符)
str1='jamhsiao0330'
print(str1.isalnum())
1.6isalpha:判断字符串是否是纯字母(不能有特殊字符)
str1='jamhsiao'
print(str1.isalpha())
1.7istitle:判断字符串是否是抬头(标题)
str1='Hello,World'
print(str1.istitle())
1.8title:把字符串变成抬头(标题)
str1='hello,world'
print(str1.title())
1.9upper:把字符串变成大写
str1='hello,world'
print(str1.upper())
1.10lower:把字符串变成小写
str1='HELLO,WORLD'
print(str1.lower())
1.11startswith:判断开头是否是'He'
str1='Hello,World'
print(str1.startswith('He'))
1.12endswith:判断结尾是否是'ld'
str1='Hello,World'
print(str1.endswith('ld'))
1.13index:取字符串的下标,如果没有会报错
str1='Hello,World'
print(str1.index('l'))
print(str1.index('a'))
1.14find:取字符串的下标,如果没有会返回-1
str1='Hello,World'
print(str1.find('l'))
print(str1.find('a'))
1.15count:统计有多少个'l'这样的字符
str1='Hello,World'
print(str1.count('l'))
1.16replace:替换字符'o'为'A',且只替换一次
str1='Hello,World'
print(str1.replace('l','m',2)) #'l'表示原字符,‘m’表示替换字符,‘2’表示替换次数
1.17join:把一个迭代对象(元组,列表,字符串,字典)替换成字符串
str1=''
str2='|'
print(''.join('jamhsiao')) #join前面的str1,str2表示分隔符
print(str2.join('jamhsiao'))
1.18split:把一个字符串从左到右切分成列表
str1='192.168.1.112'
print(str1.split('.',2)) #.表示以.为分隔符,2表示分割2次
1.19rsplit:把一个字符串从右往左切分成列表
str1='192.168.1.112'
print(str1.rsplit('.',2))
1.20strip:去除字符串左右两边的特殊字符
str1="=====hello,world====="
print(str1.strip('='))
1.21rstrip:去除字符串右边的特殊字符
str1="=====hello,world====="
print(str1.rstrip('='))
1.22lstrip:去除字符串左边的特殊字符
str1="=====hello,world====="
print(str1.lstrip('='))
1.23format:格式化
str1='my name is {},my age is {}'
print(str1.format('janhsiao',32))
str2="my name is {2},my age is {0}"
print(str2.format(32,'','jamhsiao'))
str3='''my name is {name},my age is {age}'''
print(str3.format(name='jamhsiao',age=32))
1.24%s,%d,%f格式化
str1='my name is %s,my age is %s'
print(str1 % ('jamhsiao',32)) #%前后有空格,表示分隔符
1.25切片
str1='hello,world'
print(str1[2]) #取下标为2的字符
print(str1[2:5]) #取下标2-4的字符,顾头不顾尾
print(str1[2:]) #不包括2往左的字符都去除
print(str1[:2]) #包括2往右的字符都去除
print(str1[::2]) #每隔两个字符取一次
1.26拼接
str1='jam'
str2='hsiao'
print(str1+str2)
1.27单引号,双引号和三引号的任意切换
str1="it's a cute dog"
str1='''"it's a cute dog"'''
2.列表详解
2.1sort:排序,数据类型要相同,按数字、字母、汉字进行排序
l1=['1','a','c','f','b','萧敬腾','狮子','3','2']
l1.sort()
print(l1)
2.2clear:清除,清空列表里的所有元素
l1=['1','a','c','f','b','萧敬腾','狮子','3','2']
l1.clear()
print(l1)
2.3reverse倒序
l1=['1','a','c','f','b','萧敬腾','狮子','3','2']
l1.reverse()
print(l1)
2.4copy:复制一个列表
l1=['1','a','c','f','b','萧敬腾','狮子','3','2']
print(l1.copy())
2.5insert:在索引或下标为3的地方插入一个元素
l1=['1','a','c','f','b','萧敬腾','狮子','3','2']
l1.insert(3,'JAM')
print(l1)
2.6append:在列表最后添加一个元素
l1=['1','a','c','f','b','萧敬腾','狮子','3','2']
l1.append('JAM')
print(l1)
2.7extend:在列表中添加元组、列表中的单个元素(字典纸循环key)
l1=['萧敬腾','狮子']
l1.extend('JAM')
l1.extend([8,9])
l1.extend(('h','j'))
l1.extend({'name':'teng','age':'32'})
print(l1) #['萧敬腾', '狮子', 'J', 'A', 'M', 8, 9, 'h', 'j', 'name', 'age'
2.8remove:删除指定元素,一次只能删除一个元素
l1=['萧敬腾','狮子']
l1.remove('狮子')
print(l1)
2.9pop:取出指定元素,原元素消失
l1=['萧敬腾','狮子']
l1.pop(1) #以下标或索引取
print(l1)
2.10count:统计列表中'1'的个数
l1=['萧敬腾','狮子','狮子']
print(l1.count('狮子'))
2.11index:获取下标
l1=['jam','jamhsiao','hsiao']
print(l1.index('jam')
2.12切片
l1=['jam','jamhsiao','hsiao','a','b','1']
print(l1[3])
print(l1[1:3])
print(l1[2:])
print(l1[:2])
print(l1[::2]
2.13利用下标改值
l1=['jam','jamhsiao','hsiao','a','b','1']
l1[3]='name'
print(l1)
3.字典详解
3.1pop取出字典元素,原元素消失,通过key取value
info={'name':'萧敬腾',
'age':32,
'high':171,
'weigh':110
}
print(info.pop('name'))
print(info.pop('high'))
3.2clear:清空
info={'name':'萧敬腾',
'age':32,
'high':171,
'weigh':110
}
info.clear()
print(info)
3.3popitem:取出key_value,从最后一个取,一次只能取出一个,以元组的形式输出
info={'name':'萧敬腾',
'age':32,
'high':171,
'weigh':110
}
print(info.popitem())
print(info.popitem())
3.4setdefault:设置默认值,没有的情况下才会被应用,通过key判断,而不是value
info={'name':'萧敬腾',
'age':32,
'high':171,
'weigh':110
}
print(info.setdefault('name','jamhsiao'))
print(info.setdefault('name1','jamhsiao'))
3.5values:列出所有的value
print(info.values())
3.6keys:列出所有的key
print(info.keys())
3.7items:列出所有的key_value,以元组的形式输出
print(info.items())
3.8update:合并,相同的替换,不同的原样输出
info={'name':'萧敬腾',
'age':32,
'high':171,
'weigh':110
}
info1={'name':'jamhsiao',
'age':32,
'gender':'handsome',
'fav':'music'
}
info.update(info1)
print(info)
3.9fromkeys:快速定义一个新的字典
print({}.fromkeys(('name','age','gender','high','weigh'),None))
3.10get:取值,没有输出None,不能赋值
info1={'name':'jamhsiao',
'age':32,
'gender':'handsome',
'fav':'music'
}
print(info1.get('name'))
print(info1.get('hhh')
3.11取值,没有索引,可以赋值,没有会报错
info1={'name':'jamhsiao',
'age':32,
'gender':'handsome',
'fav':'music'
}
print(info1['name'])
info1['name']='萧敬腾'
print(info1)
4.元组详解
大多数元组只能用来读,不用来修改;在相同的元素下,列表占用的资源会比元组大,因为列表的功能大
4.1有下标或索引
t1=('a','b','c','3',4,'3')
print(t1.index('b'))
print(t1.count('3'))
4.2取值
t1=('a','b','c','3',4)
print(t1[3])
print(t1[2:3])
print(t1[:2])
print(t1[2:])
print(t1[::2])
5.集合详解(不常用到)
集合特点:无序,不重复
5.1pop随机取出数据
s1={1,2,3,4,5,(1,2,3)}
print(s1.pop())
5.2intersection:交集
s1={1,2,3,4,5,(1,2,3)}
s2={1,2,3,4,5,6,7,8,9}
print(s1.intersection(s2))
5.3union并集
s1={1,2,3,4,5,(1,2,3)}
s2={1,2,3,4,5,6,7,8,9}
print(s1.union(s2))
5.4difference差集(注意基准)
s1={1,2,3,4,5,(1,2,3)}
s2={1,2,3,4,5,6,7,8,9}
print(s1.difference(s2)) #以s2为基准
print(s2.difference(s1)) #以s1为基准
6.布尔详解
0、None、空格都为假,其余都为真
a = 10
b = 20
print(a>b)
print(a<b) a = ''
if a:
print('ok')
else:
print('不ok') a = 0
if a:
print('ok')
else:
print('不ok') a = None
if a:
print('ok') else:
print('不ok')
7.转换
7.1str转换成字符串
a = 330
print(str(a))
print(type(str(a)))
7.2int转换成整型
a = 330.30
print(int(a))
print(type(int(a)))
7.3list截取为列表
s1={1,2,3,4,5,6,7} print(list(s1)) print(type(list(s1)))
python数据类型及其详解的更多相关文章
- Python函数参数详解
Python函数参数详解 形参与实参 什么是形参 在定义函数阶段定义的参数称之为形式参数,简称形参,相当于变量名. 什么是实参 在调用函数阶段传入的值称为实际参数,简称实参.相当于"变量值& ...
- 《python开发技术详解》|百度网盘免费下载|Python开发入门篇
<python开发技术详解>|百度网盘免费下载|Python开发入门篇 提取码:2sby 内容简介 Python是目前最流行的动态脚本语言之一.本书共27章,由浅入深.全面系统地介绍了利 ...
- python之struct详解
python之struct详解 2018-05-23 18:20:29 醉小义 阅读数 20115更多 分类专栏: python 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA版权协议 ...
- Python 字符串方法详解
Python 字符串方法详解 本文最初发表于赖勇浩(恋花蝶)的博客(http://blog.csdn.net/lanphaday),如蒙转载,敬请保留全文完整,切勿去除本声明和作者信息. ...
- python time模块详解
python time模块详解 转自:http://blog.csdn.net/kiki113/article/details/4033017 python 的内嵌time模板翻译及说明 一.简介 ...
- Python中dict详解
from:http://www.cnblogs.com/yangyongzhi/archive/2012/09/17/2688326.html Python中dict详解 python3.0以上,pr ...
- Python开发技术详解(视频+源码+文档)
Python, 是一种面向对象.直译式计算机程序设计语言.Python语法简捷而清晰,具有丰富和强大的类库.它常被昵称为胶水语言,它能够很轻松的把用其他语言制作的各种模块(尤其是C/C++)轻松地联结 ...
- python/ORM操作详解
一.python/ORM操作详解 ===================增==================== models.UserInfo.objects.create(title='alex ...
- 【python进阶】详解元类及其应用2
前言 在上一篇文章[python进阶]详解元类及其应用1中,我们提到了关于元类的一些前置知识,介绍了类对象,动态创建类,使用type创建类,这一节我们将继续接着上文来讲~~~ 5.使⽤type创建带有 ...
随机推荐
- Azure CosmosDB (13) CosmosDB数据建模
<Windows Azure Platform 系列文章目录> 我们在使用NoSQL的时候,如Azure Cosmos DB,可以非常快速的查询非结构化,或半结构化的数据.我们需要花一些时 ...
- fatal: could not read Username for 'https://git.dev.tencent.com' 解决方法
在使用webhook自动部署时测试出现此问题,通过以下方法粗暴解决: vim .git/config 文件,在remote "origin" url中加入帐号密码,如图所示,格式 ...
- @Transactional的正确打开方式
经常用到事务管理,可还是不小心会写错,导致事务没有生效,这里总结下. 正确的代码例子如下所示,框架是使用spring+mybatis的,有些配置的就不贴出来了. TestController2: pa ...
- C#和.Net的关系
1..net(dot net) .net是一个平台,抽象的平台概念. 实现形式是库:①定义了基本的类型(通用类型系统CTS,common type system). ②包含.net公共语言运行库( ...
- altera DDR2 ip使用笔记之IP核生成
IP核生成 Quartus生成DDR2 ip流程如下: 点击菜单栏的Tools->MegaWizard Plug-In Manager,弹出 选择IP类型,保持路径即文件名等,如下图 点击n ...
- java 调用c# web api 代码
上次我们写的.net web api 给对方公司的java团队调用,他们觉得说java无法调用.net 写的api ,靠居然有这事,索性自己写一个java的demo给他们 使用apache的Http ...
- 树莓派做下载服务器 aria2 篇
一开始要运行一下配置,扩大树莓派的根目录的空间,不然所有软件装完之后空间会只剩几百兆. sudo raspi-config 扩展根目录空间, 开启 SSH ,修改 pi 密码. 另外要提一下,树莓派默 ...
- JS 实现兼容浏览器报警提示声音
<!DOCTYPE HTML> <head> <title>JS实现报警提示音</title> <meta http-equiv="co ...
- Oracle 生成Guid;Oracle 生成多个Guid;Oracle 生成带''-"的Guid
Oracle 生成Guid select sys_guid() from dual Oracle 生成多个Guid Oracle 生成带''-"的Guid , ) , ) || '-' || ...
- idea Invalid bound statement (not found):
一次 诡异的 idea Invalid bound statement (not found): 配置文件: mybatis.mapper-locations=classpath:mapper/*.x ...