计算机二级python学习教程(3) python语言基本数据类型


Posted in Python onMay 16, 2019

本文继续计算机二级python教程的学习,之前已经学习过了计算机二级python学习教程(1) 、计算机二级python学习教程(2)

3.1 数字类型

数字类型:整数类型、浮点数类型、复数类型。

整数类型:十进制、二进制、八进制和十六进制。

计算机二级python学习教程(3) python语言基本数据类型

#不同进制的整数之间可以直接运算
>>> 0x3F2/1010
1.0
>>> (0x3F2+1010)/0o1762
2.0

浮点数类型:必须带有小数部分,小数部分可以是0,例如1010.0。表示方法有一般表示(只有十进制)和科学计数法。数值范围和小数精度受不同计算机系统的限制,一般认为没有范围限制。有不确定尾数。

#科学计数法 格式:<a>e<b> = a*10的b次方 (或E)
>>> print(1.01e3)
1010.0
>>> print(-1.01E-3)
-0.00101
 
#浮点数不确定尾数
>>> 0.1 + 0.2
0.30000000000000004
>>> 0.1 + 0.2 == 0.3
False
 
#使用round()函数四舍五入 限定保留尾数 去掉不确定尾数
>>> round(0.1 + 0.2,3) == 0.3
True

复数类型:含有虚数单位(j)的数。可以看作是二元有序实数对(a, b),表示为:a + bj,a是实数部分,简称实部,b是虚数部分,简称虚部。当b为1时,1不能省略,1j表示复数,j表示Python程序中的一个变量。

#获得实数部分
>>> (1.23e4+5.64e4j).real
12300.0
 
#获得虚数部分
>>> (1.23e4+5.64e4j).imag
56400.0
>>>

3.2 数字类型的运算

9个基本的数值运算操作符:

计算机二级python学习教程(3) python语言基本数据类型

>>> 2+5
7
>>> 2-5
-3
>>> 2*5
10
>>> 2/5
0.4
>>> 2//5
0
>>> 2%5
2
>>> 5%2
1
>>> -5
-5
>>> +5
5
>>> 2**5
32

 整数和浮点数运算结果为浮点数,整数/整数结果为浮点数,整数或浮点数与复数运算结果为复数。

增强赋值操作符:+=、-=、*=、/=、//=、%=、**=

>>> x=3
>>> x**=3 #等价于x = x**3
>>> print(x)
27

数值运算函数:

#绝对值
>>> abs(-666)
666
 
#返回二元组(x//y,x%y),即(整数商,除法余数)
>>> divmod(10,3)
(3, 1)
 
#x的y次幂,即x**y
>>> pow(3,3)
27
 
#x的y次幂%z (模运算与幂运算同时进行 速度更快)
>>> pow(55,1999999,10000)
4375
 
#四舍五入
>>> round(6.6)
7
 
#保留小数尾数四舍五入
>>> round(3.1415926,3)
3.142
 
#取最大值
>>> max(1,2,3,4,5,0.1)
5
 
#取最小值
>>> min(1,2,3,4,5,0.1)
0.1

3.3 字符串类型及格式化

单行字符串可以由一对单引号(')或双引号(")作为边界来表示,单引号和双引号作用相同。

多行字符串可以由一对三单引号(''')或三双引号(""")作为边界来表示,两者作用相同。

>>> print('这是"单行字符串"')
这是"单行字符串"
 
>>> print("这是'单行字符串'")
这是'单行字符串'
 
>>>print("""这是'多行字符串'的第一行
这是'多行字符串'的第二行
""")
这是'多行字符串'的第一行
这是'多行字符串'的第二行
 
>>>print('''这是"多行字符串"的第一行
这是"多行字符串"的第二行
''')
这是"多行字符串"的第一行
这是"多行字符串"的第二行

语言转义符: \ 。例如:\n表示换行、\\表示反斜杠、\'表示单引号、\"表示双引号、\t表示制表符(TAB)等。

>>> print("既需要'单引号'又需要\"双引号\"")
既需要'单引号'又需要"双引号"

字符串的索引:

>>> "青青子衿,悠悠我心。"[-5]
'悠'
 
>>> s = "青青子衿,悠悠我心。"
>>> s[5]
'悠'

字符串的切片:

>>>"青青子衿,悠悠我心。"[8:4]
''
 
>>>"青青子衿,悠悠我心。"[:4]
'青青子衿'
 
>>>"青青子衿,悠悠我心。"[5:]
'悠悠我心。'
 
>>>print("青青子衿,悠悠我心。"[5:])
悠悠我心。

format()方法使用:"包含{ }的字符串模板".format(逗号分隔的参数1,2,3...)   参数从0开始编号,{ }代表槽

>>> "{}曰:学而时习之,不亦{}。".format("孔子","说乎")
'孔子曰:学而时习之,不亦说乎。
>>> "{1}曰:学而时习之,不亦{0}。".format("说乎","孔子")
'孔子曰:学而时习之,不亦说乎。'

format()方法中模板字符串的槽除了包括参数序号,还可以包括格式控制信息。{<参数序号>: <格式控制标记>}  

计算机二级python学习教程(3) python语言基本数据类型

>>>s = "等级考试"
>>>"{:25}".format(s)  #左对齐,默认
'等级考试
   '
>>>"{:^25}".format(s)  #居中对齐
'  等级考试  '
 
>>>"{:>25}".format(s)  #右对齐
'   等级考试'
 
>>>"{:*^25}".format(s)  #居中对齐且填充*号
'**********等级考试***********'
 
>>>"{:+^25}".format(s)  #居中对齐且填充+号
'++++++++++等级考试+++++++++++'
 
>>>"{:十^25}".format(s) #居中对齐且填充汉字“十”
'十十十十十十十十十十等级考试十十十十十十十十十十十'
 
>>>"{:^1}".format(s)  #z指定宽度为1,不足变量s的宽度
'等级考试'
 
>>>"{:.2f}".format(12345.67890)
'12345.68'
 
>>>"{:>25.3f}".format(12345.67890)
'  12345.679'
 
>>>"{:.5}".format("全国计算机等级考试")
'全国计算机'
 
>>>"{:b},{:c},{:d},{:o},{:x},{:X}".format(425)
'110101001,Ʃ,425,651,1a9,1A9'
 
>>>"{:e},{:E},{:f},{:%}".format(3.14)
'3.140000e+00,3.140000E+00,3.140000,314.000000%'
 
>>>"{:.2e},{:.2E},{:.2f},{:.2%}".format(3.14) # 对比输出
'3.14e+00,3.14E+00,3.14,314.00%'
 
#常用的format()方法格式控制信息
>>>"{:.2f}".format(3.1415926) # 输出小数点后两位
'3.14'
 
>>>"{:x}".format(1010)  # 输出整数的十六机制形式
'3f2'
 
>>>"{:.5}".format("这是一个很长的字符串") # 输出字符串的前5位
'这是一个很'
 
>>>"{:-^10}".format("PYTHON") # 居中并填充
'--PYTHON--'

 3.4 字符串类型的操作

字符串操作符:

#连接两个字符串x与y
>>> "PHP" + "是世界上最好的语言"
'PHP是世界上最好的语言'
 
#复制n次字符串x
>>> "lws"*3
'lwslwslws'
 
#如果x是s的子串,返回True,否则返回False
>>> name = "lws"
>>> l in name
>>> "l" in name
True

字符串处理函数:

#返回字符串x的长度
>>> len("lws")
3
 
#返回任意类型x所对应的字符串形式
>>> str(0x3f)
'63'
 
#返回Unicode编码x对应的单字符
>>> chr(10000)
'✐'
 
#返回单字符x表示的Unicode编码
>>> ord("和")
21644
 
#返回整数x对应十六进制数的小写形式字符串
>>> hex(1010)
'0x3f2'
 
#返回整数x对应八进制数的小写形式字符串
>>> oct(-255)
'-0o377'

字符串处理方法:采用<a>.func(x)形式调用。方法仅作用于前导对象<a>

计算机二级python学习教程(3) python语言基本数据类型

#str.split(sep) 能够根据sep分隔字符串str,分割后的内容以列表类型返回。
>>> "Python is an excellent language.".split()
['Python', 'is', 'an', 'excellent', 'language.']
 
>>> "Python is an excellent language.".split('a')
['Python is ', 'n excellent l', 'ngu', 'ge.']
 
#str.count(sub)方法返回字符串str中出现sub的次数,sub是一个字符串。
>>>"Python is an excellent language.".count('a')
3
 
#str.replace(old, new)方法将字符串str中出现的old字符串替换为new字符串,old和new的长度可以不同。
>>>"Python is an excellent language.".replace('a', '#')
'Python is #n excellent l#ngu#ge.'
 
>>>"Python is an excellent language.".replace('Python', 'C')
'C is an excellent language.'
 
str.center(width, fillchar)方法返回长度为width的字符串,其中,str处于新字符串中心位置,两侧新增字符采用fillchar填充,当width小于字符串长度时,返回str。其中,fillchar是单个字符。
>>>"Python".center(20, "=")
'=======Python======='
 
>>>"Python".center(2, "=")
'Python'

3.5 类型判断和类型间转换

Python语言提供type(x)函数对变量x进行类型判断,适用于任何数据类型。

n = eval(input('请输入一个数字:'))
if type(n) == type(123):
print("输入的数字是整数。")
elif type(n) == type(11.3):
print("输入的数字是浮点数。")
else:
print("无法判断输入类型。")

通过内置的数字类型转换函数转换:

#浮点数或字符串转换为整数
>>> int(10.01)
10
 
#整数或字符串转换为浮点数
>>> float(10)
10.0
 
#整数或浮点数转换为字符串
>>> str(10.0)
'10.0'

第三章结束

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
学习python处理python编码问题
Mar 13 Python
python使用Queue在多个子进程间交换数据的方法
Apr 18 Python
PyQt4实现下拉菜单可供选择并打印出来
Apr 20 Python
python 切换root 执行命令的方法
Jan 19 Python
解决python 文本过滤和清理问题
Aug 28 Python
pytorch torch.nn.AdaptiveAvgPool2d()自适应平均池化函数详解
Jan 03 Python
Keras之自定义损失(loss)函数用法说明
Jun 10 Python
浅析关于Keras的安装(pycharm)和初步理解
Oct 23 Python
jupyter使用自动补全和切换默认浏览器的方法
Nov 18 Python
python实现马丁策略的实例详解
Jan 15 Python
Python语言规范之Pylint的详细用法
Jun 24 Python
python和C/C++混合编程之使用ctypes调用 C/C++的dll
Apr 29 Python
Python实现爬取亚马逊数据并打印出Excel文件操作示例
May 16 #Python
Python实现的文轩网爬虫完整示例
May 16 #Python
计算机二级python学习教程(2) python语言基本语法元素
May 16 #Python
计算机二级python学习教程(1) 教大家如何学习python
May 16 #Python
详解Python传入参数的几种方法
May 16 #Python
[机器视觉]使用python自动识别验证码详解
May 16 #Python
Python redis操作实例分析【连接、管道、发布和订阅等】
May 16 #Python
You might like
PHP 面向对象实现代码
2009/11/11 PHP
php 操作excel文件的方法小结
2009/12/31 PHP
PHP中HTML标签过滤技巧
2014/01/07 PHP
PHP通过加锁实现并发情况下抢码功能
2016/08/10 PHP
PHP的垃圾回收机制代码实例讲解
2021/02/27 PHP
Extjs4 关于Store的一些操作(加载/回调/添加)
2013/04/18 Javascript
javascript实现页面内关键词高亮显示代码
2014/04/03 Javascript
javascript编程异常处理实例小结
2015/11/30 Javascript
Javascript的动态增加类的实现方法
2016/10/20 Javascript
JavaScript cookie详解及简单实例应用
2016/12/31 Javascript
BootStrap中jQuery插件Carousel实现轮播广告效果
2017/03/27 jQuery
Ajax请求时无法重定向的问题解决代码详解
2019/06/21 Javascript
layui问题之自动滚动二级iframe页面到指定位置的方法
2019/09/18 Javascript
vuex存储复杂参数(如对象数组等)刷新数据丢失的解决方法
2019/11/05 Javascript
Vue3 的响应式和以前有什么区别,Proxy 无敌?
2020/05/20 Javascript
从表单校验看JavaScript策略模式的使用详解
2020/10/17 Javascript
vue3.0 项目搭建和使用流程
2021/03/04 Vue.js
[03:57]DOTA2英雄梦之声_第03期_幻影刺客
2014/06/21 DOTA
初步介绍Python中的pydoc模块和distutils模块
2015/04/13 Python
有趣的python小程序分享
2017/12/05 Python
python实现在pandas.DataFrame添加一行
2018/04/04 Python
Scrapy使用的基本流程与实例讲解
2018/10/21 Python
selenium+python自动化测试环境搭建步骤
2019/06/03 Python
python自动循环定时开关机(非重启)测试
2019/08/26 Python
详解如何在cmd命令窗口中搭建简单的python开发环境
2019/08/29 Python
Python使用psutil获取进程信息的例子
2019/12/17 Python
Python MySQL 日期时间格式化作为参数的操作
2020/03/02 Python
CSS3的resize属性使用初探
2015/09/27 HTML / CSS
MYSQL基础面试题
2012/05/13 面试题
中文专业毕业生自荐信
2013/10/28 职场文书
五四演讲稿范文
2014/09/03 职场文书
就业协议书范本
2014/10/08 职场文书
2014年体育教学工作总结
2014/12/09 职场文书
python中super()函数的理解与基本使用
2021/08/30 Python
详解Python中的for循环
2022/04/30 Python
MySQL示例讲解数据库约束以及表的设计
2022/06/16 MySQL