Python数字类型
文章目录
- Python数字类型
- 1. 数字类型
- 1.1 数字类型概述
- 1.2 整数类型
- 1.3 浮点数类型
- 1.4 复数
- 2. 数字类型的操作
- 2.1 内置的数值运算操作符
- 2.2 内置的数值运算函数
- 2.3 内置的数字类型转换函数
- 思考与练习
Python数字类型
1. 数字类型
1.1 数字类型概述
数字是自然界计数活动的抽象,更是数学运算和推理表示的基础。计算机对数字的识别和处理有两个基本要求:确定性和高效性。
- 确定性指程序能够正确且无歧义地解读数据所代表的类型含义。例如,输入1010,计算机需要明确地知道这个输入是可以用来进行数学计算的数字1010,还是类似房间门牌号一样的字符串”1010",这两者用处不同、操作不同且在计算机内部存储方式不同。即便1010是数字,还需要进一步明确这个数字是十进制、二进制还是其他进制类型。
- 高效性指程序能够为数字运算提供较高的计算速度,同时具备较少的存储空间代价。整数和带有小数的数字分别由计算机中央处理器中不同的硬件逻辑操作,对于相同类型操作,如整数加法和小数加法,前者比后者的速度一般快5~20倍。为了尽可能提高运行速度,需要区分不同运行速度的不同数字类型。
表示数字或数值的数据类型称为数字类型,Python语言提供3种数字类型:整数、浮点数和复数,分别对应数学中的整数、实数和复数。1010表示一个整数,"1010"表示一个字符串。
1.2 整数类型
整数类型与数学中整数的概念一致,下面是整数类型的例子:
1010,99,-217,0x9a,-0x89
整数类型共有4种进制表示:十进制、二进制、八进制和十六进制。默认情况,整数采用十进制,其他进制需要增加引导符号,如下表所示。二进制数以0b引导,八进制数以0o引导,十六进制数以0x引导,大小写字母均可使用。
| 进制种类 | 引导符号 | 描述 |
|---|---|---|
| 十进制 | 无 | 默认情况,例如,1010,-425 |
| 二进制 | 0b或0B | 由字符0和1组成,例如,0b101,0B101 |
| 八进制 | 0o或0O | 由字符0到7组成,例如,0o711,0O711 |
| 十六进制 | 0x或0X | 由字符0到9、a到f、A到F组成,例如,0xABC |
整数类型理论上的取值范围是[-∞,+∞],实际上的取值范围受限于运行Python程序的计算机内存大小。除极大数的运算外,一般认为整数类型没有取值范围限制。
我们已经知道了常见的整数类型,那么整数之间如何进行转换呢?其他进制转为十进制使用int函数,其他进制转为二进制使用bin函数,其他进制转为八进制使用oct函数,其他进制转为十六进制转为hex函数,并且是借助于10进制作为中间的桥梁进行转换,也就是使用到int()函数。例如:把一个二进制的数转换为八进制的数,需要先把二进制转换为十进制,再转换为八进制。
| 函数 | 描述 |
|---|---|
| int() | 其他进制转换为十进制 |
| bin() | 其他进制转换为二进制 |
| oct() | 其他进制转换为八进制 |
| hex | 其他进制转换为十六进制 |
1.3 浮点数类型
浮点数类型与数学中实数的概念一致,表示带有小数的数值。Python语言要求所有浮点数必须带有小数部分,小数部分可以是0,这种设计可以区分浮点数和整数类型。浮点数有两种表示方法:十进制表示和科学计数法表示。下面是浮点数类型的例子:
0.0,-77.,-2.17,3.1416,,96e4, 4.3e-3,9.6E5
科学计数法使用字母e或E作为幂的符号,以10为基数,含义如下:
<a>e<b> = a*10**b
上例中4.3e-3值为0.004.3;9.6E5也可以表示为9.6E+5,其值为960 000.0。浮点数类型与整数类型由计算机的不同硬件单元执行,处理方法不同,需要注意的是,尽管浮点数0.0与整数0值相同,但它们在计算机内部表示不同。
Python浮点数的数值范围和小数精度受不同计算机系统的限制,sys.float_info详细列出了Python解释器所运行系统的浮点数各项参数,例如:
import sys
print(sys.float_info)
输出结果为:
sys.float_info(max=1.7976931348623157e+308, max_exp=1024, max_10_exp=308, min=2.2250738585072014e-308, min_exp=-1021, min_10_exp=-307, dig=15, mant_dig=53, epsilon=2.220446049250313e-16, radix=2, rounds=1)
上述输出给出浮点数类型所能表示的最大值(max)、最小值(min),科学计数法表示下最大值的幂(max_10_exp)、最小值的幂(min_10_exp),基数 (radix)为2时最大值的幂(max_exp)、最小值的幂(min_exp),科学计数法表示中系数(<a>)的最大精度(mant_dig),计算机所能分辨的两个相邻浮点数的最小差值(epsilon),能准确计算的浮点数最大个数(dig)。
浮点数类型直接表示或科学计数法表示中的系数(<a>)最长可输出16个数字,浮点数运算结果中最长可输出17个数字,然而,根据sys.float_info结果,计算机只能够提供15个数字(dig)的准确性,最后一位由计算机根据二进制计算结果确定,存在误差,例如:
print(3.1415926535897924)
print(987654321123456.789)
输出结果为:
3.1415926535897922
987654321123456.8
浮点数在超过15位数字计算中产生的误差与计算机内部采用二进制运算有关,使用浮点数无法进行极高精度的数学运算,由于Python语言能够支持无限制且准确的整数计算,因此,如果希望获得精度更高的计算结果,往往采用整数而不直接采用浮点数。例如,计算如下两个数的乘法值,它们的长度只有10个数字,其中:
a=3.141592653,b=1.234567898
可以直接采用浮点数运算,也可以同时把它们的小数点去掉,当作整数运算,结果如下:
3.1415926531.234567898
3.8785094379864535
31415926531234567898
3878509437986453394
其中,浮点数运算输出17个数字长度的结果,然而,只有前15个数字是确定正确的。整数运算能够输出完全准确的运算结果。使用整数表达浮点数的方法是高精确度运算的基本方法之一。
拓展:高精度浮点运算类型
Python通过标准库decimal提供了一个更精确的数字类型Decimal,这个类型利用上文所介绍的整数运算方法提供高精度浮点数运算,并可以使用getcontext().prec参数自定义浮点数精度的位数,例如:
import decimala = decimal.Decimal('3.141592653')
b = decimal.Decimal('1.234567898')
decimal.getcontext().prec = 20
print(a * b)
输出结果为:
3.878509437986453394
需要注意的是,在使用decimal库时,Decimal('数字')是高精确度数字的基本表示形式,需要使用单引号,例如, decimal.Decimal('3.141592653')。
简单地说,浮点数类型的取值范围在[2-1023,21023],即 [-2.225x10308,1.797x10308] 之间,运算精度为2.220x10-16,即浮点数运算误差仅为0.000 000 000 000 0002。对于高精度科学计算外的绝大部分运算来说,浮点数类型足够“可靠”,一般认为浮点数类型没有范围限制,运算结果准确。
1.4 复数
复数可以看作是二元有序实数对(a,b),表示为a+bj,其中,a是实数部分,简称实部,b是虚数部分,简称虚部。Python语言中,复数的虚数部分通过后缀“J”或“j”来表示,例如:
12.3+4j 、-5.6+7j 、1.23e-4+5.67e+89j
复数类型中实数部分和虚数部分的数伉都是浮点类型。对于复数z,可以用 z.real和z.imag分别获得它的实数部分和虚数部分,例如:
z = 1.23e-4 + 5.67e+89j
print(z.real)
print(z.imag)
输出结果为:
0.000123
5.67e+89
复数类型在科学计算中十分常见,基于复数的运算属于数学的复变函数分支,该分支有效支撑了众多科学和工程问题的数学表示和求解。Python直接支持复数类型,为这类运算求解提供了便利。
2. 数字类型的操作
2.1 内置的数值运算操作符
Python提供了9个基本的数值运算操作符,如下表所示。这些操作符由Python解释器直接提供,不需要引用标准或第三方函数库,也叫做内置操作符。
| 操作符 | 描述 |
|---|---|
| x+y | x与y之和 |
| x+=y | 将x与y之和赋值为x |
| x-y | x与y之差 |
| x-=y | 将x与y之差赋值为x |
| x*y | x与y之积 |
| x*=y | 将x与y之积赋值为x |
| x/y | x与y之商 |
| x/=y | 将x与y之商赋值为x |
| x//y | x与y之整除商,即不大于x与y之商的最大整数 |
| x//=y | 将x与y之整除商赋值为x |
| x%y | x与y之商的余数,也称为模运算 |
| x%=y | 将x与y之商的余数赋值为x |
| -x | x的负值,即x*(-1) |
| +x | x本身 |
| x**y | x的y次幂,即xy |
| x**=y | 将x的y次幂赋值为x |
这几个操作符与数学习惯一致,运算结果也符合数学意义。操作符运算的结果可能改变数字类型,3种数字类型之间存在一种逐渐扩展的关系,具体如下:
整数>浮点数>复数
这是因为整数可以看成是浮点数没有小数的情况,浮点数可以看成是复数虚部为0的情况。基于上述扩展关系,数字类型之间相互运算所生成的结果是“更宽”的类型,基本规则如下。
(1)整数之间运算,如果数学意义上的结果是小数,结果是浮点数。
(2)整数之间运算,如果数学意义上的结果是整数,结果是整数。
(3)整数和浮点数混合运算,输出结果是浮点数。
(4)整数或浮点数与复数运算,输出结果是复数。
2.2 内置的数值运算函数
在Python的内置函数中,有6个与数值运算相关。
| 函数 | 描述 |
|---|---|
| abs(x) | x的绝对值 |
| divmod(x,y) | (x//y,x%y)。输出为二元组形式(也称为元组类型) |
| pow(x,y[,z]) | (x**y)%z,[…]表示该参数可以省略,即 pow(x,y)。它与x**y相同 |
| round(x[,ndigits]) | 对x四舍五入,保留 ndigits 位小数。round(x)返回四舍五入的整数值 |
| max(x) | 返回x中的最大值 |
| min(x) | 返回x中的最小值 |
abs()可以计算复数的绝对值,复数的绝对值是二维坐标系中复数位置到坐标原点的长度。例如:
print(abs(-3 + 4j))
输出结果为:5.0
pow()函数第三个参数z是可选的,使用该参数时,模运算与幂运算同时进行,速度很快。例如,求3的3999次幂结果的最后4位。从Python语法角度,pow(3,pow(3,999))%10000(请不要在计算机中尝试该语句)和pow(3,pow(3,999),10000)都能完成计算需求。但是,前者是先求幂运算结果再进行模运算,由于幂运算结果数值巨大,上述计算在一般计算机上无法完成;而第二条语句则在
幂运算同时进行模运算,可以很快计算出结果。例如:
print(pow(3, pow(3,999),10000)) #幂运算和模运算同时进行,速度快
# 4587
pow()函数第三个参数z的这个特点在运算加解密算法和科学计算中十分重要。
拓展:模运算
模运算(%)在编程中十分常用,主要应用于具有周期规律的场景。例如,一个星期7天,用day 代表日期,则day%7可以表示星期;对于一个整数n,n%2的取值是0或者1,可以判断整数n的奇偶。本质上,整数的模运算n%m能够将整数n映射到[0,m-1]的区间中。
2.3 内置的数字类型转换函数
数值运算操作符可以隐式地转换输出结果的数字类型,例如,两个整数采用运算符“/”的除法将可能输出浮点数结果。此外,通过内置的数字类型转换函数可以显式地在数字类型之间进行转换,如表所示。
| 函数 | 描述 |
|---|---|
| int(x) | 将x转换为整数,x可以是浮点数或字符串 |
| float(x) | 将x转换为浮点数,x可以是整数或字符串 |
| complex(re[,im]) | 生成一个复数。实部为re,虚部为im,re可以是整数、浮点数或字符串,im可以是整数或浮点数但不能为字符串 |
浮点数类型转换为整数类型时,小数部分会被舍弃(不使用四舍五入),复数不能直接转换为其他数字类型,可以通过.real 和.imag将复数的实部或虚部分别转换,例如:
print(int(10.99)) # 10
print(complex(10.99)) # (10.99+0j)
print(float((10 + 99j).imag)) # 99.0
思考与练习
(1)既然浮点数可以表示所有整数数值,Python语言为何要同时提供整数和浮点数两种数据类型?
答:尽管浮点数确实可以表示很多整数数值,但Python语言同时提供整数(int)和浮点数(float)两种数据类型,这主要是因为它们在计算效率、存储效率和精确性上存在差异,并适用于不同的场景和需求。
- 计算效率:整数运算通常比浮点数运算更快。这是因为整数运算在计算机内部通常是通过硬件直接支持的,而浮点数运算则涉及到更多的步骤和复杂性,如指数和尾数的处理。因此,在处理大量整数运算时,使用整数类型可以提高代码的执行效率。
- 存储效率:整数和浮点数在内存中的表示方式是不同的。整数通常使用固定大小的内存空间(例如,在Python 3中,整数的大小是动态调整的,但每个整数仍然占用一个固定大小的对象头和一些额外的空间来存储数字本身),而浮点数则需要更多的空间来存储其指数和尾数部分。因此,当需要存储大量数据且知道这些数据都是整数时,使用整数类型可以节省内存空间。
- 精确性:浮点数虽然可以表示很大范围的数值,但由于其内部表示方式的限制(例如,二进制浮点数无法精确表示所有的十进制小数),它们在某些情况下可能会引入舍入误差。相比之下,整数运算则是精确的,不存在舍入误差的问题。因此,在需要精确计算的场合(如金融计算),使用整数类型更为合适。
- 语义清晰性:在某些情况下,使用整数类型可以使代码的意图更加明确。例如,当我们处理像年龄、数量等这样的概念时,使用整数类型可以明确表示这些值应该是整数,而不是浮点数。这有助于增强代码的可读性和可维护性。
综上所述,尽管浮点数可以表示很多整数数值,但Python语言同时提供整数和浮点数两种数据类型是为了满足不同的计算需求、提高计算效率、节省存储空间以及保持计算的精确性。根据具体的应用场景和需求,开发者可以选择使用合适的数据类型。
(2)Python 语言中整数1010的二进制、八进制和十六进制表示分别是什么?
n = 1010
print("{}的二进制表示为{}".format(n,bin(n)))
print("{}的八进制表示为{}".format(n,oct(n)))
print("{}的十六进制表示为{}".format(n,hex(n)))
输出结果为:
1010的二进制表示为0b1111110010
1010的八进制表示为0o1762
1010的十六进制表示为0x3f2
(3)Python语言中-77.的科学计数法表示是什么?4.3e-3的十进制表示是什么?
-77.的科学计数法表示:-7.7e1、4.3e-3的十进制表示:0.0043
(4)复数2.3e+3-1.34e-3j的实部和虚部分别是什么?采用什么方法提取一个复数的实部和虚部?
实部为:2300.0,虚部为:-0.00134。使用z.real()和z.imag()函数进行提取。
(5) (0.1+0.2) == 0.3的结果是什么?(True or False)
在标准的Python浮点数运算中,(0.1 + 0.2) == 0.3 的结果会是 False。这是因为浮点数在计算机中的表示存在精度问题,0.1 和 0.2 的二进制表示并不是精确的,所以它们的和也不会精确地等于 0.3。
如果想要得到True,可以采用以下方法:
- 使用 decimal 模块,设置好精度;
- 设置一个很小的正数(容差),如果两个数的差小于容差,则认为两个浮点数相等;
- 使用round()函数
参考文章:
python中常见进制之间的转换
相关文章:
Python数字类型
文章目录 Python数字类型1. 数字类型1.1 数字类型概述1.2 整数类型1.3 浮点数类型1.4 复数 2. 数字类型的操作2.1 内置的数值运算操作符2.2 内置的数值运算函数2.3 内置的数字类型转换函数 思考与练习 Python数字类型 1. 数字类型 1.1 数字类型概述 数字是自然界计数活动的抽…...
每天一个数据分析题(一百九十六)
在多元线性回归模型的自变量选择方法中,关于向后回归法和逐步回归法的描述,以下哪些是正确的? A. 向后回归法开始时包含所有自变量,并逐步剔除每个不显著的变量。 B. 逐步回归法结合了向前回归法和向后回归法,可以在…...
华为北向网管NCE开发教程(1)闭坑选接口协议
华为北向网管NCE开发教程(1)闭坑选接口协议 华为北向网管NCE开发教程(2)REST接口开发 华为北向网管NCE开发教程(3)CORBA协议开发 本文一是记录自己开发华为北向网管遇到的坑,二是给需要的人&…...
JavaScript极速入门-综合案例(3)
综合案例 猜数字 预期效果 代码实现 <button type"button" id"reset">重新开始一局游戏</button><br>请输入要猜的数字:<input type"text" id"number"><button type"button" id"button&q…...
RabbitMQ架构详解
文章目录 概述架构详解核心组件虚拟主机(Virtual Host)RabbitMQ 有几种广播类型 概述 RabbitMQ是⼀个高可用的消息中间件,支持多种协议和集群扩展。并且支持消息持久化和镜像队列,适用于对消息可靠性较高的场合 官网https://www.…...
编译内核错误 multiple definition of `yylloc‘
编译内核错误 # make ARCHarm CROSS_COMPILEarm-mix410-linux- uImageHOSTLD scripts/dtc/dtc /usr/bin/ld: scripts/dtc/dtc-parser.tab.o:(.bss0x10): multiple definition of yylloc; scripts/dtc/dtc-lexer.lex.o:(.bss0x0): first defined here collect2: error: ld ret…...
深度学习模型部署(四)常用模型及推理平台评估指标
判断选择什么模型,什么量化方案,什么推理框架,最基础的知识就是如何评估自己的模型以及推理平台。 模型衡量标准 衡量一个模型的最直接标准就是运算速度,但是运算速度是无法计算的,所以定义了一些间接标准来推测模型的…...
【控制台警告】npm WARN EBADENGINE Unsupported engine
今天用webpack下载几个loader依赖,爆出了三个警告,大概的意思就是本地安装的node和npm的版本不是很匹配? 我的解决思路是: 先检查node和npm版本 然后去官网查找版本的对应 靠,官网404 Node.js (nodejs.org) 就找到…...
ArmSoM Rockchip系列产品 通用教程 之 GPIO 使用
1. GPIO简介 GPIO,全称 General-Purpose Input/Output(通用输入输出),是一种在计算机和嵌入式系统中常见的数字输入输出接口。它允许软件控制硬件的数字输入和输出,例如开关、传感器、LED灯等。GPIO通常由一个芯片或…...
npm镜像源地址
镜像源地址替换问题(重要) 2024 年 1 月 22 日 ,registry.npm.taobao.org 的 SSL 证书正式过期。 2022 年 5 月 淘宝源发布了公告: (大家应该没有太多关注哦,也包括我,哈哈) &am…...
Java的Writer类详解
咦咦咦,各位小可爱,我是你们的好伙伴——bug菌,今天又来给大家普及Java SE相关知识点了,别躲起来啊,听我讲干货还不快点赞,赞多了我就有动力讲得更嗨啦!所以呀,养成先点赞后阅读的好…...
R语言基础的代码语法解译笔记
1、双冒号,即:“::” 要使用某个包里的函数,通常做法是先加载(library)包,再调用函数。最新加载的包的namespace会成为最新的enviroment,某些情况下可能影响函数的结果。而package name::funct…...
【蓝桥杯】蓝桥杯算法复习(一)
😀大家好,我是白晨,一个不是很能熬夜😫,但是也想日更的人✈。如果喜欢这篇文章,点个赞👍,关注一下👀白晨吧!你的支持就是我最大的动力!Ǵ…...
移动端精准测试简介
在测试领域每隔一段时间,就会有一些主流的测试技术,比如说:接口自动化,WebUI, AppUI自动化,然后就是测试平台的开发,各类专项测试(性能,安全),再到前几年的手机集群云测平…...
CCProxy代理服务器地址的设置步骤
目录 前言 一、下载和安装CCProxy 二、启动CCProxy并设置代理服务器地址 三、验证代理服务器设置是否生效 四、使用CCProxy进行代理设置的代码示例 总结 前言 CCProxy是一款常用的代理服务器软件,可以帮助用户实现网络共享和上网代理。本文将详细介绍CCProxy…...
探秘分布式神器RMI:原理、应用与前景分析(二)
本系列文章简介: 本系列文章将深入探究RMI远程调用的原理、应用及未来的发展趋势。首先,我们会详细介绍RMI的工作原理和基本流程,解析其在分布式系统中的核心技术。随后,我们将探讨RMI在各个领域的应用,包括分布式计算…...
[项目设计] 从零实现的高并发内存池(三)
🌈 博客个人主页:Chris在Coding 🎥 本文所属专栏:[高并发内存池] ❤️ 前置学习专栏:[Linux学习] ⏰ 我们仍在旅途 目录 4.CentralCache实现 4.1 CentralCache整体架构 4.2 围绕Span的相关设计…...
将Q算法和D算法结合应用到llm解码上之人在回路
将Q算法和D算法结合应用到llm解码上之人在回路 参考地址代码解释 参考地址 https://dongfangyou.blog.csdn.net/article/details/136466609 代码 import numpy as np from tqdm import tqdmfrom sample import net, char2id_dict, get_real_p# 假设的词汇表 VOCABULARY lis…...
el-table-column嵌套el-form-item不能进行校验问题解决
项目为vue3elementPlus开发的项目 业务要求:table表格展示数据,其中有一行是ip地址可展示可修改,此处要求增加自定义校验规则 先看一下效果: 此处先描述一下,问题出在了哪里,我将el-table的data,使用一个…...
leetcode200. 岛屿数量
leetcode200. 岛屿数量 题目 思路 遍历每一个网格,若网格为1,岛屿数量1,利用一个深度优先搜索函数将岛屿置零,注意判断数组边界 代码 class Solution:def numIslands(self, grid: List[List[str]]) -> int:self.grid grid…...
eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)
说明: 想象一下,你正在用eNSP搭建一个虚拟的网络世界,里面有虚拟的路由器、交换机、电脑(PC)等等。这些设备都在你的电脑里面“运行”,它们之间可以互相通信,就像一个封闭的小王国。 但是&#…...
零门槛NAS搭建:WinNAS如何让普通电脑秒变私有云?
一、核心优势:专为Windows用户设计的极简NAS WinNAS由深圳耘想存储科技开发,是一款收费低廉但功能全面的Windows NAS工具,主打“无学习成本部署” 。与其他NAS软件相比,其优势在于: 无需硬件改造:将任意W…...
Java 语言特性(面试系列1)
一、面向对象编程 1. 封装(Encapsulation) 定义:将数据(属性)和操作数据的方法绑定在一起,通过访问控制符(private、protected、public)隐藏内部实现细节。示例: public …...
【OSG学习笔记】Day 18: 碰撞检测与物理交互
物理引擎(Physics Engine) 物理引擎 是一种通过计算机模拟物理规律(如力学、碰撞、重力、流体动力学等)的软件工具或库。 它的核心目标是在虚拟环境中逼真地模拟物体的运动和交互,广泛应用于 游戏开发、动画制作、虚…...
MySQL 隔离级别:脏读、幻读及不可重复读的原理与示例
一、MySQL 隔离级别 MySQL 提供了四种隔离级别,用于控制事务之间的并发访问以及数据的可见性,不同隔离级别对脏读、幻读、不可重复读这几种并发数据问题有着不同的处理方式,具体如下: 隔离级别脏读不可重复读幻读性能特点及锁机制读未提交(READ UNCOMMITTED)允许出现允许…...
QMC5883L的驱动
简介 本篇文章的代码已经上传到了github上面,开源代码 作为一个电子罗盘模块,我们可以通过I2C从中获取偏航角yaw,相对于六轴陀螺仪的yaw,qmc5883l几乎不会零飘并且成本较低。 参考资料 QMC5883L磁场传感器驱动 QMC5883L磁力计…...
STM32标准库-DMA直接存储器存取
文章目录 一、DMA1.1简介1.2存储器映像1.3DMA框图1.4DMA基本结构1.5DMA请求1.6数据宽度与对齐1.7数据转运DMA1.8ADC扫描模式DMA 二、数据转运DMA2.1接线图2.2代码2.3相关API 一、DMA 1.1简介 DMA(Direct Memory Access)直接存储器存取 DMA可以提供外设…...
使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台
🎯 使用 Streamlit 构建支持主流大模型与 Ollama 的轻量级统一平台 📌 项目背景 随着大语言模型(LLM)的广泛应用,开发者常面临多个挑战: 各大模型(OpenAI、Claude、Gemini、Ollama)接口风格不统一;缺乏一个统一平台进行模型调用与测试;本地模型 Ollama 的集成与前…...
Linux离线(zip方式)安装docker
目录 基础信息操作系统信息docker信息 安装实例安装步骤示例 遇到的问题问题1:修改默认工作路径启动失败问题2 找不到对应组 基础信息 操作系统信息 OS版本:CentOS 7 64位 内核版本:3.10.0 相关命令: uname -rcat /etc/os-rele…...
Mysql8 忘记密码重置,以及问题解决
1.使用免密登录 找到配置MySQL文件,我的文件路径是/etc/mysql/my.cnf,有的人的是/etc/mysql/mysql.cnf 在里最后加入 skip-grant-tables重启MySQL服务 service mysql restartShutting down MySQL… SUCCESS! Starting MySQL… SUCCESS! 重启成功 2.登…...
