详解Python开发语言中的基本数据类型

目录
  • 1.Python的基本数据类型
  • 2.整数类型的概念以及使用
    • 2.1.整数类型的概念
    • 2.2.使用Python操作整数类型
  • 3.浮点数类型的概念以及使用
  • 4.布尔类型的概念以及使用

1.Python的基本数据类型

数据类型想必大家都知道是什么含义,指的是输入数据的类型,任何数据都有明确的数据类型,例如我们输入100,这个数据就是整数类型,输入7.7这个数据就是浮点数类型,输入字母、汉字、字母加汉字的数据都是字符串类型。

Python基本数据类型有三种:

  • 整数类型:数字
  • 浮点数类型:带小数点的数字
  • 字符串类型:字母、数字、汉字任意组合

通过type函数可以读取某个数据的数据类型,配合print函数可以打印出某个数据的类型,语法格式如下。

type(输入的数据)

print(type(输入的数据))

打印出100、7.7、aaas11sdj三个数据的数据类型。

print(type(100))
print(type(7.7))
print(type('aaas11sdj'))

使用print配合type函数一起使用,可以打印出某个数据的数据类型是什么。

2.整数类型的概念以及使用

2.1.整数类型的概念

整数类型是什么就不再多说了,在计算机整数中有四种不同的进制表示方式,对于一个整数可以有十进制、二进制、八进制、十六进制这四种表示方式,默认情况下整数是十进制表示。

  • 十进制默认就是一个整数,没有任何含义
  • 二进制是以0b开头的,只有0和1两个数字,在计算机中一切皆二进制,只有0和1。
  • 八进制是以0o开头的,包含0-7八个数字。
  • 十六进制是以0x开头,包含0-9十个数字和A-F六个字母。

各种进制包含的数字、计算方法都在下表中:

进制类型 基本数 逢几进一  计算方法
十进制 0/1/2/3/4/5/6/7/8/9 10 118=8+1*10^1+1*10^2
二进制 0/1 2 0b1110110=0+1*2^1+1*2^2+0*2^3+1*2^4+1*2^5+1*2^6=118
八进制 0/1/2/3/4/5/6/7 8 0o166=6+6*8^1+1*8^2=118
十六进制 0/1/2/3/4/5/6/7/8/9
A/B/C/D/E/F
16 0x76=6+7*16^118

进制类型基本数逢几进一计算方法

进制转换的计算方法技巧:

任何进制都是一个整数,几进制转换成几进制,就要看是逢几进一,例如整数118转换成十进制:

逢十进一:118=8+1*10^1+1*10^2,从最左侧的个位数开始计算,第一位不变,第二位乘10的1次方,第三位乘10的2次方,以此类推,有几位数字就计算几位,最后将数字相加就是准确的十进制数。

2.2.使用Python操作整数类型

print函数可以将输入的整数(数字)转换成十进制数,也可以结合进制函数将输入的数据转换成指定进制的数字,相当于进制转换,还可以通过print函数结合int整数函数将传入的数据转换成一个整数。

1)使用print函数将输入的整数转换成十进制数

print函数会将传入的整数转换成一个十进制数字,根据传入的整数,print函数会识别这个证书是几进制数,然后通过运算转换成对应的十进制数。

#传入一个十进制数118,被print函数输出后得到十进制数118
print(118)

#传入一个二进制数0b1110110,被print函数输出后得到十进制数118
print(0b1110110)

#传入一个八进制数0o166,被print函数输出后得到十进制数118
print(0o166)

#传入一个十六进制数0x76,被print函数输出后得到十进制数118
print(0x76)

2)使用print函数将传入的数据根据进制函数转换成对应进制数

使用print函数,根据我们传入的数据,必须是整数,然后通过进制函数,将这个整数转换成对应进制的数字。

对于进制转换的函数,Python有3个内置的进制函数,可以将传入的十进制数字转换成对应进制的字符串。

  • bin():将传入的十进制整数转换成二进制字符串。
  • oct():将传入的十进制整数转换成八进制字符串。
  • hex():将传入的十进制整数转换成十六进制字符串。
#bin():将传入的十进制整数转换成二进制字符串
print(bin(118))
#返回0b1110110

# oct():将传入的十进制整数转换成八进制字符串。
print(oct(118))
#返回0o166

# hex():将传入的十进制整数转换成十六进制字符串。
print(hex(118))
#返回0x76

3)使用print函数配合int函数将传入的数据转换成整数

int函数可以将传入的数据转换成一个整数,也可以说是创建一个整数,使用int函数处理整数时有三种情况:

  • 当int函数不传入任何参数时,默认返回整数0。
  • 当int函数传入一个参数时,会将传递的参数转换成整数,例如传入的是小数,也会将小数部分移除,仅显示整数部分。
  • 当int函数传入两个参数时,第一个参数必须是数字,第二个参数指定这个数字是哪种进制,然后根据传参将这个数字转换成十进制。
#当int函数不传入任何参数时,默认返回整数0
print(int())

#当int函数传入一个参数时,会将传递的参数转换成整数
print(int(118))				#转换成118
print(int(118.9))			#转换成118
print(int('117'))			#转换成117

#int函数传入两个参数
#传入数字118,这个数字是十进制,转换成对应的十进制数,得到的结果是118
print(int('118',10))
#传入数字0o166,这个数字是八进制,转换成对应的十进制数,得到的结果是118
print(int('0o166',8))

3.浮点数类型的概念以及使用

浮点数指的就是小数,我们可以直接使用print函数打印一个浮点数。

print(0.348923740932)
#得到结果0.348923740932

另外我们还可以通过float函数创建浮点数,和int函数使用方法一样,通过float函数可以指定传入的数据输出后是一个浮点数,但是传入的数字必须是数字。

对于float函数来说,如果不传入任何参数,默认返回浮点数0.0,当只传递一个参数时,会将传递的参数转换为浮点数。

#不传入参数默认返回0
print(float())

#传入一个整数 被float转换成浮点数 结果为176.0
print(float(176))

#传入一个浮点数,被float转换成浮点数,结果不变:152.88
print(float(152.88))

另外对于很大的数字,例如几千万几个亿,我们也可以使用浮点数通过科学技术法的形式来表示。

公式为:men

​ m表示浮点数,e是固定写法表示乘以10,n表示乘以10的n次方。

​ 例如我要计算浮点数5.27的10的7次方是多少,写法就是5.27e7,过程就是5.27*10^7,结果为52700000。

#52700000这个整数比较大,我们希望传参时简化输入的内容,少输入一点,基于这种情况可以通过float函数使用科学计数法的方式简化输入的内容
print(float(5.27e7))
#返回的结果为:52700000.0

#求5.27的10的-3次方是多少
print(float(5.27e-3))

浮点数在运算过程中可能会出现不精准的现象,如下所示。

#运算结果非0
print(1.1+2.2+3.3)
#输出结果为6.6 精准。

#运算结果为0
print(1.1+2.2-3.3)
#输出结果为:4.440892098500626e-16 不精准。

对于这种不精准的浮点数运算,我们可以使用decimal、fractions这两个模块中的类来解决此问题。

使用decimal模块可以处理十进制浮点数运算,使用fractions模块可以处理分子分母相除之后的浮点数运算。

1.使用decimal模块解决

#从decimal模块中导入Decimal类,Decimal可以理解为是decimal模块中的内置函数
from decimal import Decimal
#将浮点数传入Decimal类中,使用print进行运算
print(Decimal('1.1') + Decimal('2.2') - Decimal('3.3'))
#输出结果为:0.0 正确的结果

2.使用fractions模块解决

#从fractions模块中导入Fraction类,Fraction类可以理解为是fractions这个模块的内置函数
from fractions import Fraction
#将浮点数传入到Fraction类中,使用print进行运算
print(Fraction(11, 10) + Fraction(22, 10) - Fraction(33, 10))
#输出结果:0 正确的结果

4.布尔类型的概念以及使用

布尔类型只有两种取值范围,要么是True,要么是False,严格区分大小写。

例如:今天下雨吗?今天回家吗?都属于布尔表达式,回答要么是True,要么是False。

#当表达式为真时,返回True
print(5>3)
#当表达式为假时,返回False
print(6<2)

True对应的数字值是1,False对应的数字值是0。

#TRUE的值为1,如果TRUE的值不为1,则会返回False
print(True == 1)

#False的值为0,如果False的值不为1,则会返回False
print(False == 0)

#为了进一步验证True和False的值,我们进行一组运算,True=1+False=0+10,返回结果为11,就表示我们的说法是正确的
print(True + False + 10)

以上就是详解Python开发语言中的基本数据类型的详细内容,更多关于Python基本数据类型的资料请关注我们其它相关文章!

(0)

相关推荐

  • 学好python基本数据类型

    目录 一.基本用法 1.注释 2.输出 3.变量 4.命名规范 5.变量的定义方式 二.python的数据类型 1.字符串类型 2.数字类型 3.List列表类型 4.tuple 元组类型的定义 5.Dict字典类型 6.set集合类型 7.数据类型转换 8.自动类型转换 9.强制类型转换 一.基本用法 1.注释 Python中,#+语句 即为一条注释,也可以用 '''注释块 ''' #人生苦短,我用Python 2.输出 Python中,print()为输出函数 print("Hello Wo

  • Python中的基本数据类型介绍

    Python 中主要有8种数据类型:number(数字).string(字符串).list(列表).tuple(元组).dict(字典).set(集合).Boolean(布尔值).None(空值). 其中Python有六个标准的数据类型: 1.字符串 字符串的声明有三种方式:单引号.双引号和三引号(包括三个单引号或三个双引号) >>> str1 = 'hello world' >>> str2 = "hello world" >>>

  • 简单谈谈python基本数据类型

    int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位系统上,整数的位数为64位,取值范围为-2**63-2**63-1,即-9223372036854775808-9223372036854775807 long(长整型) 跟C语言不同,Python的长整数没有指定位宽,即:Python没有限制长整数数值的大小,但实际上由于机器内存有限,我们使用的长整数数值不可能无限大. 注意,自从Python2.2

  • python基本数据类型练习题

    题目[1]:格式输出练习.在交互式状态下完成以下练习. 运行结果截图: 题目[2]:格式输出练习.在.py的文件中完成以下练习 代码: num = 100 print('%d to hex is %x' % (num,num)) print('%d to hex is %X' % (num,num)) print('%d to hex is %#x' % (num,num)) print('%d to hex is %#X' % (num,num)) from math import pi pr

  • Python中的基本数据类型讲解

    一.数据类型分类 1.按存值个数区分 单个值:数字,字符串 多个值(容器):列表,元组,字典,集合 2.按可变不可变区分 可变:列表[],字典{},集合{} 不可变:数字,字符串,元组().bool,None 3.有序无序区分 有序(可按索引取值):字符串,列表,元组 无序:字典,集合 二.整型(int) age = 18 # age=int(18) print(id(age))#<code>4530100848</code> print(type(age))#<class

  • Python安装与基本数据类型教程详解

    人生苦短,我选Python. Python比其他的语言来说真的简洁多了,很多时候想做的东西都有对应的模块可以导入,平时玩点小东西真心不错. 首先讲一下安装,其实没什么好讲的,点点点点点,完事. 这里的AddPython 3.7to PATH记得勾上,这样你就可以在CMD里面直接使用Python了(打开cmd,输入python就OK啦.) 这里附上最新的Python安装包,win64的. https://www.python.org/ftp/python/3.7.3/python-3.7.3-am

  • 详解Python开发语言中的基本数据类型

    目录 1.Python的基本数据类型 2.整数类型的概念以及使用 2.1.整数类型的概念 2.2.使用Python操作整数类型 3.浮点数类型的概念以及使用 4.布尔类型的概念以及使用 1.Python的基本数据类型 数据类型想必大家都知道是什么含义,指的是输入数据的类型,任何数据都有明确的数据类型,例如我们输入100,这个数据就是整数类型,输入7.7这个数据就是浮点数类型,输入字母.汉字.字母加汉字的数据都是字符串类型. Python基本数据类型有三种: 整数类型:数字 浮点数类型:带小数点的

  • 详解Python 3.10 中的新功能和变化

    随着最后一个alpha版发布,Python 3.10 的功能更改全面敲定! 现在,正是体验Python 3.10 新功能的理想时间!正如标题所言,本文将给大家分享Python 3.10中所有重要的功能和更改. 新功能1:联合运算符 在过去, |符号用于 "算术或"运算,例如: print(0 | 0) print(0 | 1) print({1, 2} | {2, 3}) 输出: 0 1 {1, 2, 3} 在Python 3.10中, |符号有的新语法,可以表示x类型 或 Y类型,以

  • 详解python开发环境搭建

    虽然网上有很多python开发环境搭建的文章,不过重复造轮子还是要的,记录一下过程,方便自己以后配置,也方便正在学习中的同事配置他们的环境. 1.准备好安装包 1)上python官网下载python运行环境(http://www.jb51.net/softs/416037.html),目前比较稳定的是python-3.5.2 2)上pycharm官网下载最新版的IDE(http://www.jb51.net/softs/299378.html),官网提供了mac.windows和linux三种版

  • 详解python时间模块中的datetime模块

    Python提供了多个内置模块用于操作日期时间,像calendar,time,datetime.time模块我在之前的文章已经有所介绍,它提供的接口与C标准库time.h基本一致.相比于time模块,datetime模块的接口则更直观.更容易调用. 1.datetime中包含三个类date ,time,datetime 函数datetime.combine(date,time)可以得到dateime,datetime.date().datetime.time()可以获得date和time 2.d

  • 详解Python核心编程中的浅拷贝与深拷贝

    一.问题引出浅拷贝 首先看下面代码的执行情况: a = [1, 2, 3] print('a = %s' % a) # a = [1, 2, 3] b = a print('b = %s' % b) # b = [1, 2, 3] a.append(4) # 对a进行修改 print('a = %s' % a) # a = [1, 2, 3, 4] print('b = %s' % b) # b = [1, 2, 3, 4] b.append(5) # 对b进行修改 print('a = %s'

  • 详解Python开发中如何使用Hook技巧

    什么是Hook,就是在一个已有的方法上加入一些钩子,使得在该方法执行前或执行后另在做一些额外的处理,那么Hook技巧有什么作用以及我们为什么需要使用它呢,事实上如果一个项目在设计架构时考虑的足够充分,模块抽象的足够合理,设计之初为以后的扩展预留了足够的接口,那么我们完全可以不需要Hook技巧.但恰恰架构人员在项目设计之初往往没办法想的足够的深远,使得后续在扩展时深圳面临重构的痛苦,这时Hook技巧似乎可以为我们带来一记缓兵之计,通过对旧的架构进行加钩子来满足新的扩展需求. 下面我们就来看看如果进

  • 详解python的ORM中Pony用法

    Pony是Python的一种ORM,它允许使用生成器表达式来构造查询,通过将生成器表达式的抽象语法树解析成SQL语句.它也有在线ER图编辑器可以帮助你创建Model. 示例分析 Pony语句: select(p for p in Person if p.age > 20) 翻译成sql语句就是: SELECT p.id, p.name, p.age, p.classtype, p.mentor, p.gpa, p.degree FROM person p WHERE p.classtype IN

  • 详解Python对JSON中的特殊类型进行Encoder

    Python 处理 JSON 数据时,dumps 函数是经常用到的,当 JSON 数据中有特殊类型时,往往是比较头疼的,因为经常会报这样一个错误. 自定义编码类 #!/usr/bin/env python # -*- coding:utf-8 -*- # Author: wxnacy(wxnacy@gmail.com) import json from datetime import datetime USER_DATA = dict( id = 1, name = 'wxnacy', ts =

  • 详解Python设计模式编程中观察者模式与策略模式的运用

    观察者模式 观察者模式:又叫发布订阅模式,定义了一种一对多的依赖关系,让多个观察者对象同时监听某一个主题对象,这个主题对象的状态发生变化时,会通知所有观察者对象,是他们能自动更新自己. 代码结构 class Topic(object): """主题类.保存所有观察者实例的引用,每个主题都可以有很多观察者 可以增加和删除观察者""" def __init__(self): self.obs = [] def Attach(self, ob): se

  • 详解Python中第三方库Faker

    项目开发初期,为了测试方便,我们总要造不少假数据到系统中,尽量模拟真实环境. 比如要创建一批用户名,创建一段文本,电话号码,街道地址.IP地址等等. 平时我们基本是键盘一顿乱敲,随便造个什么字符串出来,当然谁也不认识谁. 现在你不要这样做了,用Faker就能满足你的一切需求. 1. 安装 pip install Faker 2. 简单使用 >>> from faker import Faker >>> fake = Faker(locale='zh_CN') >&

随机推荐