零基础入门学习Python(5)--闲聊之Python的数据类型
前言
本次主要闲聊一下python的一些数值类型,整型(int)
,浮点型(float)
,布尔类型(bool)
,还有e记法
(科学计数法),也是属于浮点型。
数值类型介绍
- 整型
整型就是我们平时所说的整数。python3的整型已经和长整型进行了无缝结合,长度不受限制,python3很容易实现大数运算。
python2的长整型后面要加上L - 浮点型
浮点型也就是平常我们所说的小数
,例如我们的圆周率3.14,python区分整型与浮点型的唯一方式就是看有没有小数点
- e记法
e记法就是我们平时所说的科学计数法,用来表示特别大或者特别小的数,例如:
>>> 0.00000078
7.8e-07
这个e,就是e记法的意思
地球到太阳的距离是1.5亿公里,转换成米,就是:150000000000
写成e记法就是:
>>> 1.5e11
150000000000.0
大家可以看出来e=10,后面跟的数字就是几次方的意思,例如说15000,就可以表示成:
>>> 1.5 * (10**4)
15000.0
>>> 1.5e4
15000.0
- 布尔类型
特殊的整型。True相当于整数1,False相当于整数0,例如:
>>> True + True
2
>>> True + False
1
>>> 0 + True
1
>>> True * False
0
>>> True / False
Traceback (most recent call last):
File "<pyshell#17>", line 1, in <module>
True / False
ZeroDivisionError: division by zero
>>>
错误原因:除数不能为0
数值类型转换
- 整数(int)
整数:int()
>>> a= '520'
>>> b = int(a)
>>> b
520
>>> a = '小甲鱼'
>>> c = int(a)
Traceback (most recent call last):
File "<pyshell#28>", line 1, in <module>
c = int(a)
ValueError: invalid literal for int() with base 10: '小甲鱼'
错误原因是:字符编码不符合
>>> a = 5.99
>>> c = int(a)
>>> c
5
浮点数转换成整数,python会采取把小数点后面的数字截断处理,因为这样效率高
- 浮点数:float()
浮点数:float()
>>> a = 520
>>> b = float(a)
>>> b
520.0
>>> a = '520'
>>> b = float(a)
>>> b
520.0
- 字符串:str()
字符串:str()
将一个数,或任何其他类型转换成字符串,例如:
>>> a = 5.99
>>> b = str(a)
>>> b
'5.99'
>>> a = True
>>> b = str(a)
>>> b
'True'
>>> a = True + True
>>> b = str(a)
>>> b
'2'
>>> c = str(5e19)
>>> c
'5e+19'
获取类型信息
- type()函数
python提供了type()函数,来得到数据的类型。
>>> type(a)
<class 'str'>
>>>
>>> a = 5.2
>>> type(a)
<class 'float'>
>>>
>>> type(True)
<class 'bool'>
>>>
>>> type(5e19)
<class 'float'>
>>>
>>> type(1)
<class 'int'>
- isinstance()函数
python更推荐使用isinstance()函数,来得到数据类型,例如:
>>> a = '小甲鱼'
>>>
>>> isinstance(a,str)
True
>>> isinstance(a,int)
False
>>> isinstance(1,bool)
False
意思就是说,这两者类型一致,就返回True,不一致返回False
练练手
判断给定年份是否为闰年。
闰年是这样定义的:
普通年(不能被100整除的年份)能被4整除的为闰年。(如2004年就是闰年,1999年不是闰年);
世纪年(能被100整除的年份)能被400整除的是闰年。(如2000年是闰年,1900年不是闰年);
第一种写法:
temp = input('请输入一个年份:')
while not temp.isdigit():
temp = input("抱歉,您的输入有误,请输入一个整数:")
year = int(temp)
if year/400 == int(year/400):
print(temp + ' 是闰年!')
else:
if (year/4 == int(year/4)) and (year/100 != int(year/100)):
print(temp + ' 是闰年!')
else:
print(temp + ' 不是闰年!')
第二种写法:
temp = input("请输入一个年份:")
while True:
if temp.isdigit():
year = int(temp)
if (year/400) == int(year/400):
print(year,"为闰年")
else:
if ((year/4) == int(year/4)) and ((year/100) != int(year/100)):
print(year,"为闰年")
else:
print(year,"不为闰年")
break
else:
temp=input("您输入的有误,请重新输入:")
零基础入门学习Python(5)--闲聊之Python的数据类型的更多相关文章
- 零基础入门学习python--第二章 用Python设计第一个游戏
知识点汇总1. 什么是BIF? BIF(Built-in Functions)内置函数,共68个,可直接调用,方便程序员快速编写脚本程序.输入dir(__builtins__)即可查看所有内置函数,h ...
- 【Python教程】《零基础入门学习Python》(小甲鱼)
[Python教程]<零基础入门学习Python>(小甲鱼) 讲解通俗易懂,诙谐. 哈哈哈. https://www.bilibili.com/video/av27789609
- 《零基础入门学习Python》【第一版】视频课后答案第001讲
测试题答案: 0. Python 是什么类型的语言? Python是脚本语言 脚本语言(Scripting language)是电脑编程语言,因此也能让开发者藉以编写出让电脑听命行事的程序.以简单的方 ...
- 零基础入门学习Python(1)--我和Python的第一次亲密接触
前言 最近在学习Python编程语言,于是乎就在网上找资源.其中小甲鱼<零基础入门学习Python>试听了几节课,感觉还挺不错,里面的视频都是免费下载,小甲鱼讲话也挺幽默风趣的,所以呢,就 ...
- 学习参考《零基础入门学习Python》电子书PDF+笔记+课后题及答案
国内编写的关于python入门的书,初学者可以看看. 参考: <零基础入门学习Python>电子书PDF+笔记+课后题及答案 Python3入门必备; 小甲鱼手把手教授Python; 包含 ...
- 学习《零基础入门学习Python》电子书PDF+笔记+课后题及答案
初学python入门建议学习<零基础入门学习Python>.适合新手入门,很简单很易懂.前一半将语法,后一半讲了实际的应用. Python3入门必备,小甲鱼手把手教授Python,包含电子 ...
- 大牛整理最全Python零基础入门学习资料
大牛整理最全Python零基础入门学习资料 发布时间:『 2017-11-12 11:56 』 帖子类别:『人工智能』 阅读次数:3504 (本文『大牛整理最全Python零基础入门学习资料 ...
- 小甲鱼零基础入门学习python--课后作业
[小甲鱼零基础入门学习python--课后作业] 小甲鱼零基础入门学习python--课后作业 本章内容: 1.基础部分的作业 2.函数部分的作业 3.字典.集合.文件部分作业 4.异常 5.Easy ...
- 函数:我的地盘听我的 - 零基础入门学习Python019
函数:我的地盘听我的 让编程改变世界 Change the world by program 函数与过程 在小甲鱼另一个实践性超强的编程视频教学<零基础入门学习Delphi>中,我们谈到了 ...
- Python3零基础入门学习视频+源码+课件+习题-小甲鱼
目录 1. 介绍 2. 目录 3. 下载地址 1. 介绍 适用人群 完全零基础入门,不需要任何前置知识. 课程概述 本系列教程面向零基础的同学,是一个深入浅出,通俗易懂的Python3视频教程. 前半 ...
随机推荐
- UVa 11401 Triangle Counting (计数DP)
题意:给定一个数 n,从1-n这些数中任意挑出3个数,能组成三角形的数目. 析:dp[i] 表示从1-i 个中任意挑出3个数,能组成三角形的数目. 代码如下: #pragma comment(link ...
- 【WIP】Swift4 异常处理, JSON处理
创建: 2018/03/24 更新: 2018/06/05 补充catch可以只带where不带模式 [任务表]TODO 异常处理语法 异常的发生 抛出例外 thorw 式 ● 抛出的值的类型必须采 ...
- Linux 常用命令十三 kill
一.kill命令 kill命令用来删除执行中的程序或工作.kill可将指定的信息送至程序.预设的信息为SIGTERM(15),可将指定程序终止.若仍无法终止该程序,可使用SIGKILL(9)信息尝试强 ...
- bzoj 1444: [Jsoi2009]有趣的游戏【AC自动机+dp+高斯消元】
https://blog.sengxian.com/solutions/bzoj-1444 orz 一直是我想错了,建出AC自动机之后,实际上这个定义是设f[i]为经过i节点的 * 期望次数 * ,因 ...
- 51nod 1237 最大公约数之和 V3【欧拉函数||莫比乌斯反演+杜教筛】
用mu写lcm那道卡常卡成狗(然而最后也没卡过去,于是写一下gcd冷静一下 首先推一下式子 \[ \sum_{i=1}^{n}\sum_{j=1}^{n}gcd(i,j) \] \[ \sum_{i= ...
- html 解决空格显示问题
前端开发者都知道,在html中手动输入多个空格或者是回车,在页面解析的时候都被解析成一个空白显示,但有时候的需求要求显示多个空格,这个问题怎么解决呢?根绝我个人的经验,目前找到了以下集中解决办法: 1 ...
- Unix\Linux | 总结笔记 | 邮件发送
实验:在本地实现不同用户收发邮件 #root发送邮件 #stu 收邮件 #stu 查看邮件 并回复邮件 #root 查看stu回复的邮件
- 【杂谈】RN的一点回顾与未来的展望
从开始到现在,笔者接触RN已经接近半年,适逢各种变化的发生,于是,简单的遐想了一下RN的未来. Airbnb在今年早些时候,宣布了放弃继续使用RN,并且发布了一篇“React Native at Ai ...
- Java中的流(2)字节流-InputStream和OutputStream
字节流的两个顶层类是抽象类:InputStream和OutputStream 1. OutputStream void write(int b) 往流中写一个字节b void write(byte b ...
- 开发一个 Web App 必须了解的那些事
在过去的一年里,我在从头开始开发我的第一个重要的Web应用.经验教会了很多以前不知道的东西,特别是在安全性和用户体验方面. 值得一提的是,我上一次尝试构建的任何合理复杂性是在2005年.所以,在安全防 ...