Python - 基础数据类型 Number 数字、bool 布尔、complex 复数(下)

简介: Python - 基础数据类型 Number 数字、bool 布尔、complex 复数(下)

int() 转成十进制

int 可以将数字字符串和 Number 类型的值转成整数

# 转成十进制
print(0b101)
print(0o777)
print(0xBBB)
print(int(0b101))
print(int(0o777))
print(int(0xBBB))
print(int("-123"))
print(int(1.1))
print(int(1.9))
# 输出结果
5
511
3003
5
511
3003
-123
1
1


  • 不写 int() 的话,也可以将其他进制的数自动转成十进制
  • int() 能将纯整数(不能是浮点数)的字符串转成 int 类型
  • 传入浮点数不会进行四舍五入,直接取整数部分

 

bin() 其他进制数转二进制

# 转成二进制
print(bin(10))  # 10 转成 2进制
print(bin(0o7))  # 7 转成 2进制
print(bin(0xA))  # 10 转成 2进制
print(bin(0o27))  # 8*2+7 转成 2进制
print(bin(0x22E))  # 16^2*2+16*2+14 转成 2进制
# 输出结果
0b1010
0b111
0b1010
0b10111
0b1000101110


oct() 其他进制转成八进制

# 转成八进制
print(oct(110))
print(oct(0b100))
print(oct(0xAAA))
# 输出结果
0o156
0o4
0o5252


hex() 其他进制转成十六进制

# 转成十六进制
print(hex(110))
print(hex(0b100))
print(hex(0o777))
# 输出结果
0x6e
0x4
0x1ff


求模


# 求模
print(5 % 2)
print(5.1 % 2)
# 输出结果
1
1.0999999999999996


  • 浮点数的求模结果为一堆小数位,而不是 1.1
  • 因为在计算机内存,有的浮点数无法被精确的表示,在这里,只能使用近似值来表示 1.1

 

灵魂拷问:为什么%表示模除而不是“百分号”?

  • 平时我们把它看做一个“百分号”
  • 在编程计算中,通常把它和/一样当做除法的运算符
  • 求模是一个不同的运算,只是用%符号来表示

 

% 求模是如何运算的

  • X 除以 Y 余 J  比如, 100 除以 16 余数为 4
  • 100%16 就等于 4

 

幂运算


# 幂运算
print(2 ** 3)  # 2 的 3次方
print(1.1 ** 3)  # 1.1 的 3 次方
# 输出结果
8
1.3310000000000004


bool


布尔类型

  • 真:True
  • 假:False


# 打印 bool 和 type
print(True)
print(False)
print(type(True))
print(type(False))
# 输出结果
True
False
<class 'bool'>
<class 'bool'>


注意不是 true 和 false哦

 

为什么说 bool 属于 Number 的一种呢?

# 可以将它转成 int 呢?
print(int(True))
print(int(False))
# 输出结果
1
0


因为 int 能讲 bool 转成整型,True 就是 1,False 就是 0

 

那只有 1 和 0 能表示 True 和 False吗?

并不是

Number

# 数字
print(bool(1))
print(bool(1.1))
print(bool(-1))
print(bool(0))
# 输出结果
True
True
True
False


字符串

# 字符串
print(bool("123"))
print(bool(""))
print(bool("  "))
print(bool("\n"))
# 输出结果
True
False
True
True


列表

# 列表
print(bool([1, 1]))
print(bool([]))
# 输出结果
True
False


元组

# 元组
print(bool((1, 1)))
print(bool(()))
# 输出结果
True
False


set

# set
print(bool({1, 1, 1}))
print(bool({}))
# 输出结果
True
False


None

# None
print(bool(None))
# 输出结果
False


总结

无论什么数据类型,主要是空值就会为 False,非空就是 True

 

复数


  • 36j,直接在数字后面加 j
  • 用的比较少,不写了
相关文章
|
19天前
|
Python
【10月更文挑战第7天】「Mac上学Python 13」基础篇7 - 数据类型转换与NoneType详解
本篇将详细介绍Python中的常见数据类型转换方法以及 `NoneType` 的概念。包括如何在整数、浮点数、字符串等不同数据类型之间进行转换,并展示如何使用 `None` 进行初始赋值和处理特殊情况。通过本篇的学习,用户将深入理解如何处理不同类型的数据,并能够在代码中灵活使用 `None` 处理未赋值状态。
51 2
【10月更文挑战第7天】「Mac上学Python 13」基础篇7 - 数据类型转换与NoneType详解
|
22天前
|
编译器 数据安全/隐私保护 Python
Python--基本数据类型
【10月更文挑战第4天】
|
24天前
|
存储 Python
python数据类型、debug工具(一)
python数据类型、debug工具(一)
|
17天前
|
存储 程序员 Python
Python编程入门:探索变量和数据类型
【10月更文挑战第8天】本文是针对初学者的Python编程入门指南,重点介绍Python中变量的定义和使用以及不同的数据类型。我们将通过实例来理解基本概念,并展示如何在Python程序中应用这些知识。文章旨在帮助初学者建立扎实的基础,使他们能够更自信地编写Python代码。
|
19天前
|
存储 安全 Serverless
Python学习四:流程控制语句(if-else、while、for),高级数据类型(字符串、列表、元组、字典)的操作
这篇文章主要介绍了Python中的流程控制语句(包括if-else、while、for循环)和高级数据类型(字符串、列表、元组、字典)的操作。
25 0
|
Python
Python零基础学习笔记(七)—— Number数字类型及其转换
Number数字类型 整型定义变量的方法 直接法 = 1 num2 = num1 连续 = num2 =1 交互式赋值num1, num2 = 1, 2 浮点型(小数):由整数部分和小数部分组成num1 = 1.
1922 0
|
18天前
|
存储 程序员 开发者
Python编程基础:从入门到实践
【10月更文挑战第8天】在本文中,我们将一起探索Python编程的奇妙世界。无论你是初学者还是有一定经验的开发者,这篇文章都将为你提供有价值的信息。我们将从Python的基本概念开始,然后逐步深入到更复杂的主题,如数据结构、函数和类。最后,我们将通过一些实际的代码示例来巩固我们的知识。让我们一起开始这段Python编程之旅吧!
|
6天前
|
安全 数据处理 开发者
Python中的多线程编程:从入门到精通
本文将深入探讨Python中的多线程编程,包括其基本原理、应用场景、实现方法以及常见问题和解决方案。通过本文的学习,读者将对Python多线程编程有一个全面的认识,能够在实际项目中灵活运用。
|
6天前
|
弹性计算 安全 小程序
编程之美:Python让你领略浪漫星空下的流星雨奇观
这段代码使用 Python 的 `turtle` 库实现了一个流星雨动画。程序通过创建 `Meteor` 类来生成具有随机属性的流星,包括大小、颜色、位置和速度。在无限循环中,流星不断移动并重新绘制,营造出流星雨的效果。环境需求为 Python 3.11.4 和 PyCharm 2023.2.5。
26 9
|
2天前
|
数据采集 机器学习/深度学习 人工智能
Python编程入门:从基础到实战
【10月更文挑战第24天】本文将带你进入Python的世界,从最基础的语法开始,逐步深入到实际的项目应用。我们将一起探索Python的强大功能和灵活性,无论你是编程新手还是有经验的开发者,都能在这篇文章中找到有价值的内容。让我们一起开启Python的奇妙之旅吧!