博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Python的数据类型--数字--字符串
阅读量:5344 次
发布时间:2019-06-15

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

先讲一个概念

在Python里,一切皆对象,对象基于类创建

所以,以下这些值都是对象: "wupeiqi"、38、['北京', '上海', '深圳'],并且是根据不同的类生成的对象。

1.变量类型与对象

1.程序中需要处理的状态很多,就要有不同类型的变量值来表示,
在python中所有数据都是围绕对象这个概念来构建的,对象包含一些基本的数据类型:数字,字符串,列表,元组,字典等
程序中存储的所有数据都是对象,包含了1.身份(id),2.类型(type),3值(通过变量名来查看) 每个对象都有自己的的方法。方便开发者使用,
创建某个特定类型的对象也称为创建了该类型的一个实例,工厂函数的概念来源于此
2.可变与不可变
实例被创建后,身份和类型是不可变的, 如果值是不可以被修改的,则是不可变对象 如果值是可以被修改的,则是可变对象

按照可变类型来分:

可变类型:列表,字典的value

不可变类型:数字,元组,字符串

按照取值个数来分:

取一个值:数字,字符串

取多个值:列表,元组,字典

按照取值的方式:

直接取值:数字,取得是数字整体,不能取单个

索引取值:字符串,列表,元组

映射取值:字典,通过keys取值values

2.容器类型

某个对象包含对其他对象的引用,则称为容器或者集合

3.变量的赋值

  • 与c语言的区别在于变量赋值操作无返回值
  • 链式赋值:y=x=a=1
  • 多元赋值:x,y=1,2 x,y=y,x
  • 增量赋值:x+=1

4.数据类型

python中的数据类型 python使用对象模型来存储数据,每一个数据类型都有一个内置的类,每新建一个数据,实际就是在初始化生成一个对象,即所有数据都是对象 对象三个特性
  • 身份:内存地址,可以用id()获取
  • 类型:决定了该对象可以保存什么类型值,可执行何种操作,需遵循什么规则,可用type()获取
  • 值:对象保存的真实数据

标准数据类型:数字,字符串,列表,元组,字典

其他数据类型:集合,函数/方法,模块,null,类型type,类,文件

4.1 数字类型

定义:a=1

特性:

1.只能存放一个值

2.一经定义,不可更改

3.直接访问

分类:整型,长整型,布尔,浮点,复数

Python的整型相当于C中的long型

Python中的整数可以用十进制,二进制 bin ,八进制  oct,十六进制表示 hex

a=19print(bin(a))print(oct(a))print(hex(a))
a='123'           要把a从字符串转为数字,a必须有数字 print(type(a),a) 打印出a类型,值 b=int(a) 把a转为数字类型,重新赋值给b, print(type(b),b) 结果 
123
123

常识:

 

1个字节=8位

 

1个汉字=3个字节

 

gb2312=2汉字=6个字节=48个比特位

 

utf-8=3汉字=9个字节=72比特位(表示:最少3个汉字)

 

4.1.1 

意,自从Python2起,如果发生溢出,Python会自动将整型数据转换为长整型, 所以如今在长整型数据后面不加字母L也不会导致严重后果了。

   在Python3中没有整形长度限制,统一为整形

    Python2中,整形长度为32位,

4.1.2  布尔,Ture,False ,既1和0,

4.1.3浮点数float,浮点数就是数学中的小数,类似C语言中的double,在python中,用科学计数法表示:0.0013  ,Python表示为1.3e-3  ,=0.0013

就是1.3*10*-3,,,如果是1.3e3=1300,1.3*10*3

4.1.4复数

复数由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。 注意,虚数部分的字母j大小写都可以,

5 字符串类型

5.1定义:它是一个有序的字符的集合,用于存储和表示基本的文本信息,‘’或“”或‘’‘ ’‘’中间包含的内容称之为字符串 特性: 1.只能存放一个值 2.不可变 3.按照从左到右的顺序定义字符集合,下标从0开始顺序访问,有序 补充:   1.字符串的单引号和双引号都无法取消特殊字符的含义,如果想让引号内所有字符均取消特殊意义,在引号前面加r,如name=r'l\thf'   2.unicode字符串与r连用必需在r前面,如name=ur'l\thf'

5.2字符串的操作

移除空白 分割 长度 索引 切片 1.str=' hello world' print(str.count('l'))  --结果为3 ,找出字符串中的单个字符长度, --------------------------------------------------------------------- 2.str=' HELLO World' print(str.lower()) --结果为 hello world,把字符串的所有字符转为大写, ---------------------------------------------------------------------------- 3.str=' HELLO World' print(str.split()) ---结果为 ['HELLO', 'World'] 默认以空格作为 分隔符,生成列表, 也可以指定分隔符, ------------------------------------------------------------------------------- 4.str=' HELLO World' print(str.replace('o','a'))----结果 HELLO Warld ,替换单个字符, ----------------------------------------------------------------------------------------- 5.str=' HELLO World' print(str.index("H"))----找出字符串中的单个字符的索引值,如果没有找到该单个字符的索引值,报错 ----------------------------------------------------------------------------------------- 6.x=' HELLO World' print(x.strip())-----取出字符串两边的空格 ------------------------------------------------------------------ 7.x='Aaff' print(x.istitle())-----判断字符串首字母是否是大写,大写返回值是真, -------------------------------------------------------------------- 8.x='123' print(x.isdigit())----判断字符串是否包含了数字,有数字,返回值为真,没有,为假
x='1' if x.isdigit() :         ---如果x是数字,     new_x=int(x) ---让x输入整数,把值赋给new_x print(new_x,type(x)) ---条件成立,打印new_x else: ---否则,就执行下面的条件 print('no') ---打印no
--------------------------------------------------------------- 9.x='abc' print(x.find('c'))-----根据字符串里的单个字符,找出该单个字符的索引值, 如果单个不在字符串里,则返回-1 ---------------------------------------------------------------- 10.a='bbbb' print(len(a))--------输出字符串的长度 ---------------------------------------------------------------- 11.a='bbbb' print(a.startswith('b')) ---判断以什么字符作为开头,返回布尔值 ---------------------------------------------------------------- 12.a='bbbb' print(a.endswith('m'))----------判断以什么字符作为结尾。返回布尔值 --------------------------------------------------------------- 13.a='bbbb' print(a.center(30,'#'))---------让字符串在30个字符居中,不够用#代替, ---------------------------------------------------------------- 14.a='bbbb' print(a.capitalize())------------让字符串首字母大写 -------------------------------------------------------------- 15. 方法1 a='name:{},age:{},sex:{}' print(a.format("egon",12,'male'))-------格式化字符串,字符串内对应的空必须为{}, 方法2 a='name:{a},age:{b},sex:{c}' print(a.format(a="egon",c=12,b='male'))----指定要对应的值 方法3
a='name:{1},age:{0},sex:{2}' print(a.format('a','c',12))  ---结果  name:c,age:a,sex:12 索引值,0,1,2,按照format()里的顺序,既索引值给字符串赋值, ------------------------------------------------------------------------ 16.a='aaddcDDD' print(a.swapcase())-结果为-AADDCddd ---反转字符串的所有字符的大小写 ---------------------------------------------------------------------------- 17.a='aaddcDDD' print(a.title()) ---------------把开头的字母大写
 
 

转载于:https://www.cnblogs.com/gyh04541/p/6985101.html

你可能感兴趣的文章
转,SqlServer 基础之(触发器)
查看>>
JS及JQ实现网页侧边导航定位
查看>>
php用比较运算符把数字作为字符串比较时
查看>>
继《一次体验很不爽的面试经历》后深入反思
查看>>
套接口编程
查看>>
next()与nextLine的区别
查看>>
php.ini 文件中配置的意义注释
查看>>
使用WIF实现单点登录Part III —— 正式实战
查看>>
如何以管理员身份运行cmd
查看>>
Terminating app due to uncaught exception 'NSGenericException' 类崩溃文章收集
查看>>
《团队-排课软件-开发文档》
查看>>
LeetCode 669. Trim a Binary Search Tree
查看>>
children ie8下获取错误
查看>>
第七讲 自定义Realm实现授权
查看>>
CS3103 Operating Systems
查看>>
《物联网框架ServerSuperIO教程》-19.设备驱动和OPC Client支持mysql、oracle、sqlite、sqlserver的持久化。v3.6.4版本发布...
查看>>
《DSP using MATLAB》示例Example7.21
查看>>
PHP学习笔记(6) PHP静态化页面的实现思路
查看>>
拷贝构造和拷贝赋值、静态成员(static)、成员指针、操作符重载(day06)
查看>>
2017年秋季个人阅读计划
查看>>