您的位置:首页 > 编程语言 > Python开发

Python个人快速入门学习(三)Python中的基本数据类型

2019-01-18 22:27 603 查看

三、Python中的基本数据类型

1.整数类型

-和数学中的整数概念是一致的

-可正可负,没有取值范围限制  例如 pow( x , y ) 函数求算x的y次方可以想算多大就算多大

-有四种表示形式:二进制、十进制、八进制、十六进制

2.浮点数类型

-和数学中的实数概念一致

-带有小数点及小数的数字

-浮点数的取值范围和小数的精度都存在限制,但是常规的计算可以忽略

-取值范围数量级约为         ,精度数量级为 

-浮点数之间的运算存在不确定尾数 -> 跟C相似,由计算机内部的运算原理有关,二进制表示小数可以无限接近但是不完全相同

>>> 0.1 + 0.2 == 0.3 的结果是 false

可以使用 round(x , d) 函数来对浮点数进行四舍五入的运算,对x四舍五入并且保留d位小数

-浮点数间的比较运算使用round函数进行辅助,浮点数也可以采用科学记数法来进行表示

[code]round(x,d)

3.复数类型

-只有python给予了复数的类型

-复数实例:1.23e-4+5.67e+89j 这是一个复数,由实部和虚部构成

-可以使用 z.real 来获得实部,使用 z.imag 来获得虚部

4.数字类型及操作:

[code]x % y - 模运算
x ** y - 幂运算:x的y次幂

二元操作符:跟C++几乎相同

类型之间可以进行混合运算,默认生成结果为“最宽”的类型

5.数值运算函数

-python提供了以函数类型来完成的数值运算的操作

[code]abs(x) - 取绝对值
divmod(x , y)  - 商余(x//y , x%y),同时输出商和余数,返回为(a,b)的形式
pow(x,y,z) - 幂余 (x**y)%z
round(x , d) - 四舍五入函数
max(X1,X2,X3,...,Xn) - 求最大值
min(X1,X2,X3,...,Xn) - 求最小值

-python还提供了数字类型转换的函数:

[code]int(x) - 转换为整数
float(x) - 转换为浮点数,添加小数部分
complex(x) - 转换为复数类型

6.字符串类型

-由0个或者多个字符组成的有序字符序列

-字符串由一对单引号或者一对双引号或者三单引号表示:

[code]'string1'
"string2"
'''这样也可以叫做
多行字符串'''

-字符串是字符的有序序列,可以对其中的字符进行索引

-如何在字符串中输出单引号或者双引号或者两者同时输出:

[code]'输出双引号 " '
"输出单引号 ' "
'''既输出双引号 " 又输出单引号 ' '''

-字符串的切片:

[code]str = "asdfghjkl"
str[M:N]    - 获得字符串str的从M位置到N位置的子串
str[:N]     - 从开头至N位置
str[M:]     - 从M位置至结尾
str[M:N:K]  - 以步长为K来对str的M至N位置获取子串
str[::-1]   - 相当于将字符串颠倒

-转义字符:

\" 代表双引号、\n 表示换行、\b 表示回车、\r 表示回车等

-字符串操作符:

-字符串处理函数

[code]len(x) - 返回字符串的函数
str(x) - 将任意类型的x转化为字符串类型
hex(x) - 将一个整数类型转化成十六进制表达的字符串
oct(x) - 将一个整数类型转化成八进制表达的字符串
chr(u) - u为Unicode的编码,返回其对应的字符形式
ord(x) - x为字符,返回其对应的Unicode编码
# Unicode编码 - 统一字符编码,即几乎覆盖所有字符的编码方式
# 从0到1114111 (0x10FFFF)空间,每个编码对应一个字符
# python字符串中每个字符都是Unicode编码的字符

-字符串的处理方法

[code]str.lower(x) - 将字符串中的字母全部转换成小写字母
str.upper(x) - 将字符串中的字母全部转换成大写字母
str.split(sep=None) - 返回一个列表,由字符串按照sep分隔的字符组成
str.count(x) - 返回字符串str中出现子串x的次数
str.replace(old , new) - 将str中的旧字符串替换为新字符串
str.center(width , char) - 居中填充函数
str.strip("chars") - 在str中去掉在其左侧和右侧chars中列举的字符
str.join(iter) - 在字符串iter除最后一个元素外的每个元素后面增加一个str    #主要用于字符串的分隔

#split的结果:
b = "a,b,c,d,e,f"
c = b.split(",")
print(c)
#输出:
['a', 'b', 'c', 'd', 'e', 'f']

#count的结果:
print(b.count(","))
#输出:
5

#center的结果:
d = "dzzhyk"
print(d.center(20,"~"))
#输出:
~~~~~~~dzzhyk~~~~~~~

#strip的结果:
d = "dzzhyk"
print(d.strip("dzk"))
#输出:
hy

#join的结果:
d = ","
print(d.join("abcdefghigklmn"))
#输出:
a,b,c,d,e,f,g,h,i,g,k,l,m,n

-字符串类型的格式化 - 使用了占位符 { },跟C#相似

[code]print("字符串{1}和字符串{0}和字符串{2}".format("dzzhyk","hello",45))

还可以对参数的输出格式进行相关的控制:

槽内部对于格式化的配置方式:{ <参数序号> : <控制格式标记> }

前三个可以看成一组:

[code]print("{0:=^20}".format("dzzhyk"))
#输出:
=======dzzhyk=======

默认情况下填充空格、左对齐

< , > :主要是为了方便人看

[code]print("{:,}".format(1000000000000000))
#输出:
1,000,000,000,000,000

< . 精度 > : 浮点数小数的有效精度(会四舍五入) 或者 字符串输出多少位

[code]print("{:.7}".format(123.456789123456789))
#输出:
123.4568
print("{:.7}".format("dzzzzhyk5551"))
#输出:
dzzzzhy

< 输出类型 > :格式化输出为相应的类型

[code]print("{0:b} 、{0:d} 、{0:o} 、{0:x} 、{0:X} 、{0:c}".format(126))
#输出:
1111110 、126 、176 、7e 、7E 、~
print("{0:e} 、{0:E} 、{0:f} 、{0:%}".format(123.456789))
#输出:
1.234568e+02 、1.234568E+02 、123.456789 、12345.678900%

 

 

 

 

 

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: