当前位置: 首页 > news >正文

超详解——python数字和运算——小白篇

目录

1.位运算

2. 常用内置函数/模块

math模块:

random模块:

decimal模块:

3.内置函数:

总结:


1.位运算

位运算是对整数在内存中的二进制表示进行操作。Python支持以下常见的位运算符:

  1. 按位与(&):两个二进制数对应位都为1时,结果的该位才为1。
  2. 按位或(|):两个二进制数对应位有一个为1,结果的该位就为1。
  3. 按位异或(^):两个二进制数对应位不同,结果的该位为1。
  4. 按位取反(~):将二进制数的每一位取反(0变1,1变0)。
  5. 左移(<<):将二进制数的所有位向左移动指定的位数,右侧补0。
  6. 右移(>>):将二进制数的所有位向右移动指定的位数,左侧补0(对于无符号数)或补符号位(对于有符号数)。

示例:

a = 60  # 二进制:0011 1100
b = 13  # 二进制:0000 1101# 按位与
result = a & b  # 结果:0000 1100 (12)
print(result)  # 输出:12# 按位或
result = a | b  # 结果:0011 1101 (61)
print(result)  # 输出:61# 按位异或
result = a ^ b  # 结果:0011 0001 (49)
print(result)  # 输出:49# 按位取反
result = ~a  # 结果:1100 0011 (-61),在Python中,负数用补码表示
print(result)  # 输出:-61# 左移
result = a << 2  # 结果:1111 0000 (240)
print(result)  # 输出:240# 右移
result = a >> 2  # 结果:0000 1111 (15)
print(result)  # 输出:15

2. 常用内置函数/模块

Python提供了许多内置函数和模块来进行各种计算和操作。以下是一些常用的内置函数和模块:

  1. math模块:提供数学函数,如平方根、对数、三角函数等。
  2. random模块:用于生成随机数。
  3. decimal模块:提供对十进制浮点数的精确计算。
  4. 内置函数:如abs()max()min()sum()等。

math模块

import mathprint(math.sqrt(16))  # 4.0,计算平方根
print(math.log(8, 2))  # 3.0,以2为底的对数
print(math.sin(math.pi / 2))  # 1.0,计算正弦值

random模块

import randomprint(random.randint(1, 10))  # 生成1到10之间的随机整数
print(random.random())  # 生成0到1之间的随机浮点数
print(random.choice(['a', 'b', 'c']))  # 从列表中随机选择一个元素

decimal模块

from decimal import Decimala = Decimal('0.1')
b = Decimal('0.2')
c = a + b
print(c)  # 0.3,精确的十进制计算

3.内置函数

print(abs(-5))  # 5,计算绝对值
print(max(1, 2, 3))  # 3,返回最大值
print(min(1, 2, 3))  # 1,返回最小值
print(sum([1, 2, 3]))  # 6,计算和

总结:

  • Python支持各种位运算符,可以直接对整数进行二进制操作。
  • math模块提供了丰富的数学函数。
  • random模块用于生成随机数。
  • decimal模块用于精确的十进制浮点数计算。
  • 内置函数如abs()max()min()sum()等,简化了基本的数值操作。
http://www.lryc.cn/news/368361.html

相关文章:

  • LabVIEW图像采集处理项目中相机选择与应用
  • Java——IO流(一)-(2/9):File类的常用方法(判断文件类型、获取文件信息、创建删除文件、遍历文件夹)
  • 电子设计入门教程硬件篇之集成电路IC(二)
  • Unity3D测量面积和角度实现方法(二)
  • vite 配置 typescript 环境
  • ThreadCache线程缓存
  • UE5_加载本地图片(jpg, png) 转 UTexture
  • Linux操作系统:Spark在虚拟环境下的安装及部署
  • 内网安全--隧道技术代理技术
  • 彩虹易支付最新版源码
  • python生成excel数据并实现隔行变色
  • IEEE754 十进制数转32位浮点数格式
  • JVM内存分析之JVM分区与介绍
  • 多目标检测模型加权框集成
  • 转型AI产品经理(6):“ 序列位置效应”如何应用在Chatbot产品中
  • ESP32:往MicroPython集成PCNT以支持硬件正交编码器
  • Unity基础实践小项目
  • Set up a WordPress blog with Nginx
  • Facebook开户|Facebook广告设计与测试优化
  • vite获取所有环境变量(env)
  • 【算法】常用排序算法(插入排序、希尔排序、堆排序、选择排序、冒泡排序、快速排序、归并排序、计数排序)超详细
  • 力扣 240.搜素矩阵II
  • ASUS华硕ROG幻14Air笔记本GA403UI(UI UV UU UJ)工厂模式原厂Windows11系统安装包,带MyASUS in WinRE重置还原
  • Spring Boot通过自定义注解和Redis+Lua脚本实现接口限流
  • 硬件工程师的蜗牛成长路
  • 简单记录玩4399游戏flash插件问题
  • GNU/Linux - 使用字符设备来操作GPIO
  • Android13 Settings 左上角箭头图标点击无效
  • WinForms 应用(.NET 8.0)使用ReportViewerCore.WinForms显示打印RDLC报表
  • 【网络安全】【深度学习】【入侵检测】SDN模拟网络入侵攻击并检测,实时检测,深度学习