首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

从float类型转换为int类型后,为什么python中的数字都变成了-1?

从float类型转换为int类型后,为什么Python中的数字都变成了-1?

在Python中,当将一个浮点数(float)类型转换为整数(int)类型时,会发生截断操作。截断操作会将浮点数的小数部分直接舍弃,只保留整数部分。然而,如果浮点数的小数部分大于等于0.5,截断操作会向下取整,即舍弃小数部分并减去1。这就是为什么在某些情况下,转换后的整数会变成-1。

例如,当将浮点数3.5转换为整数时,截断操作会将小数部分0.5向下取整为0,并减去1,结果为2。但是,当将浮点数-3.5转换为整数时,截断操作会将小数部分-0.5向下取整为-1,并减去1,结果为-2。

因此,当将浮点数转换为整数时,需要注意截断操作可能导致的结果不同。如果想要进行四舍五入操作,可以使用round()函数来实现。

腾讯云相关产品和产品介绍链接地址:

  • 腾讯云云服务器(CVM):提供弹性计算能力,满足各类业务需求。产品介绍链接
  • 腾讯云云数据库MySQL版:可靠、可扩展的关系型数据库服务。产品介绍链接
  • 腾讯云对象存储(COS):安全、稳定、低成本的云端存储服务。产品介绍链接
  • 腾讯云人工智能(AI):提供丰富的人工智能服务和解决方案。产品介绍链接
  • 腾讯云物联网(IoT):为物联网设备提供连接、管理和数据处理能力。产品介绍链接
  • 腾讯云移动开发平台(MTP):提供全面的移动应用开发和运营解决方案。产品介绍链接
页面内容是否对你有帮助?
有帮助
没帮助

相关·内容

pytorch和tensorflow爱恨情仇之基本数据类型

1python基本数据类型 数字型:整型、浮点型、布尔型、复数型。 非数字型:字符串、列表、元组、字典。...使用type可以查看变量类型:type(变量名) 2、numpy数据类型 名称 描述 bool_ 布尔型数据类型(True 或者 False) int_ 默认整数类型(类似于 C 语言中 long...4个数, #因此原来两个float64成了8个int16 我们要使用astype来修改数据类型,看一下例子: >>> a=np.array([1.1, 1.2]) >>> a.dtype dtype(...'float64') >>> a.astype(np.int16) array([1, 1], dtype=int16) >>> a.dtype dtype('float64') #a数据类型并没有...>>> a=a.astype(np.int16) #赋值操作a数据类型变化 >>> a.dtype dtype('int16') >>> a array([1, 1], dtype=int16)

2.9K32

Python对我下手了!学会这几个知识点可以救命!

类型转换在项目实战也经常用到,例如一个超市月销售额是一个字符类型,转换为数字类型才可以进行统计,如计算平均数等,具体转换语法如下所示。...语法: float(a) 将变量a转换为浮点数 int(b) 将变量b转换为整数 str(c)将变量c转换为字符串 其中a、b、c为任意变量类型 例子: ''' 各种数据类型之间转换 '''...(str_number)) # 将字符串转换为整型int()或者浮点数float() print('\nstr_number转换为数字类型') int_str_number = int(str_number...各个数值类型转换 number数据类型是: float_number数据类型是: number转换为字符串类型 str_number...数据类型是: str_number转换为数字类型 int_str_number数据类型是: float_str_number数据类型是:

89020

Python系统学习02】数据类型类型转换

换言之,带小数点数字即是浮点数。 比如下列代码数字都是浮点数。...比如,1+'1'这么写,在js中肯定没问题,因为会进行隐式类型转换,把数字1变成字符串1,然后就变成了字符串拼接,最后到11。...但是python不会进行隐式类型转换,他发现你用数字1+字符串1,就会报语法错误。 因此当我们把两个不同类型数据进行结合处理时,应该手动将其中一方类型转换统一成跟另一方一样。...print(int(float('1.8'))) # 1,先将字符串'1.8'转换为浮点数1.8,再直接对浮点数1.8取整数字1 3、float()函数 3-1、使用 将需要转换数据放在括号里,像这样...3-2、规则 float()函数也可以将整数和字符串转换为浮点类型。 但同时,如果括号里面的数据是字符串类型,那这个数据一定得是数字形式。

1K30

C语言:数据在内存存储形式

比方说float a+int b,那计算前会先把b转换成float类型运算 如果是float a +double b,那计算前会先把a转换成double类型运算 四、大小端字节序和字节序判断 当我们了解了整数在内存存储...截断就是通过简单地将高位丢弃,保存低位来实现 5.2 char数据类型int数据类型 char数据类型int数据类型原理就是整型提升! 1....5.4 相同字节数据类型强制类型转换 上述讲都是不同字节数据类型,那如果是相同数据类型强制转换,比如说intfloat,那恰好都是4个字节,就不需要补位,也不需要截断。...6.3.3 E全为1 这时,如果有效数字M全为0,表⽰±⽆穷⼤(正负取决于符号位s) 6.4 题目解析 明白了浮点数存储形式,我们就一起对5.4那道题进行解析 6.4.1 为什么9还原成浮点数变成了...9为整型,在内存存储为00000000 00000000 00000000 00001001 转换为float类型,将其按照浮点数形式拆分,得到第1位符号位s=0,后面8位指数位为00000000,

13010

Python数据类型数字

Python数字类型分为:整形、布尔型、浮点型以及复数型 创建int类型对象 int类型通常为数字,创建int类型方式有两种,在创建时候两边不需要加单引号或上引号。...: # 将数字字符串转换为整数,数字字符串通过进制转换为整数 >>> int('18'), int('100', 8) (18, 64) # 将进制数转换为整数 >>> int('0x40',16),int...数字类型Python2.7里面是分整型和长整型,也就是说如果你数字大到一定范围,那么Python会把它转换为长整形,一个数字类型包含32位,可以存储-2147483648到214483647整数...其实很简单,Python会把两个值转换为其中最复杂那个对象类型,然后再对相同类型运算。 比如上面的例子,会先把10换为10.0然后再与3.14159相加。...到这里数据类型数字就都介绍完成了,左后说明一下整数比浮点数简单、浮点数比复数简单, 数字运算会在运算符知识点中统一介绍。

1.3K20

C#入门知识大总结(在C语言基础上)

位有效数字,具体取决于编译器 四舍五入 从左到右非0数开始算有效数字 double 存储15~17位有效数字 C#声明小数默认double类型 decimal 存储27~28位 float f = 0.1234f...a = 1; int  b = 2; a = b;//int隐式转换为long b = a;//这句是不对!...无符号变量可以有符号变量,但前提是有符号变量覆盖范围要包括无符号类型 int i2 = 1; uint ui2 = 1; byte b2 = 1; i2 = ui2;// 错误!...)i; (2)不同类型之间 有符号和无符号之间同样可以强 但可能出现范围问题 浮点数转成整数主要是精度问题 bool、string不支持强 b.Parse法强 把字符串类型换为对应类型 变量类型..."1" + 4 + true;//正确,复合运算和ToString()起作用 2.字符串拼接方式2 string.Format("待拼接内容",内容1,内容2); 想要被拼接内容用占位符替代{数字}

20920

Python数据类型转换详解

Python数据类型转换有两种,一种是自动类型转换,即Python在计算中会自动地将不同类型数据转换为类型数据来进行计算;另一种是强制类型转换,即需要我们基于不同开发需求,强制地将一个数据类型换为另一个数据类型...数字类型布尔类型int类型,0为False,其他为真 float类型,0.0为False,其他为真 ''' a = 0 # int res = bool(a) print...其他转列表类型 1.数字类型是非容器类型,不能转换为列表 2.字符串转列表时,会把字符串每一个字符当作列表元素 3.元组转列表时,会把字符串每一个字符当作列表元素 4.字典转列表时,只保留字典键...1.数字类型是非容器类型,不能转换为集合 2.字符串集合时,结果是无序 3.列表集合时,结果是无序 4.元组集合时,结果是无序 5.字典集合时,只保字典键,结果是无序 a = '123...1.数字类型是非容器类型,不能转换为字典 2.字符串不能字典类型,因为字符串不能生成二级容器 3.列表类型字典类型,列表必须为等长二级容器,子容器元素个数必须为2 4.元组类型字典类型,列表必须为等长二级容器

19020

Python_实用入门篇_13

目前学习Python基础一次总结 ---- 一.列表,元组,集合,字典,字符 1.Python中最常见序列类型为:列表,元组,字符类型 特点: ①所有序列支持迭代 注意:generator也是可迭代对象...Python可变与不可变类型 可变类型: 列表、字典是可变 举个例子说明:往列表list里增添数据,list = [1,2,3],list.append(4),实则就是在原有的列表对象上添加了数值...不可变类型: 主要核心类型数字、字符串、元组是不可变 举个例子说明:以数字类型整数类型为例,i = 5, i += 1 实际上并不是真的在原有的整数对象上+1,而是重新创建一个value为6...如果说for循环用于针对集合每个元素一个代码块,而while循环则不断地运行,直到指定条件不满足为止。  1.使用for情况 for循环可以遍历可迭代类型,如列表,元组,字符类型。...使⽤for...in...循环语法其中依次拿到数据进⾏使⽤。 2.使用while情况 用于在循环列表等序列类型同时进行序列类型操作。

4.4K20

python入门到精通】python常用数据类型详解(一)

作者 :“大数据小禅” 欢迎小伙伴们 点赞、收藏⭐、留言 目录 python变量类型 python数据类型 python Number python Number数据类型转化 部分示例: 字符串转化为整形数字...字符串转化为浮点数 列表或者字典转化为元组 元组或者字符串转化为列表 数字unicode字符串 python变量类型 Python 变量赋值不需要类型声明。...python是允许多个变量赋值,这个也会是python独特之处,如a,b,c变量同时复制a=b=c=常数 python数据类型 Python 定义了一些标准类型,用于存储各种类型数据。...支持四种不同数值类型1:整型(Int) - 通常被称为是整型或整数,是正或负整数,不带小数点。...>>>unichr("1000") >>>u'\u03e8' 整数返回一个unicode字符,x范围大多数系统上为0到65536 PS :以上均为常用数字转化类型

2.1K20

上手python之数据类型转换和标识符

数据类型转换 为什么要转换类型 数据类型之间,在特定场景下,是可以相互转换,如字符串转数字数字字符串等 那么,我们为什么要转换它们呢? 数据类型转换,将会是我们以后经常使用功能。...如: 文件读取数字,默认是字符串,我们需要转换成数字类型 后续学习input()语句,默认结果是字符串,若需要数字也需要转换 将数字转换成字符串用以写出到外部系统 等等 常见转换语句 语句(函数...) 说明 int(x) 将x转换为一个整数 float(x) 将x转换为一个浮点数 str(x) 将对象 x 转换为字符串 同前面学习type()语句一样,这三个语句,都是带有结果(返回值) 我们可以用...print直接输出 或用变量存储结果值  类型转换注意事项 类型转换不是万能,毕竟强扭瓜不会甜, 我们需要注意: 1....标识符命名规则 - 不可使用关键字 Python中有一系列单词,称之为关键字 关键字在Python中都有特定用途 我们不可以使用它们作为标识符  变量命名规范  学完了标识符(变量、类、方法)命名规则

72510

opencl:kernel两种向量类型转换(convert_T,as_typen)主要区别

https://blog.csdn.net/10km/article/details/51171911 熟悉C语言开发者知道,一般我们在C,强制类型转换用()就可以了,比如将一个int...转换为float: int i=4; float f=(float)i; 在opencl对于标量类型(scala data types),上面的语法规则也一样通用,但是对于向量类型(vector data...);与原数据相比,向量元素类型数据长度1个字节扩展成了4个字节 对于向量类型来说,”显式转换”方式要求就是源类型和目标类型元素个数必须是一样,就是说,不允许将int4 用convert_int2或...convert_float2换为int2或float2。...”方式类型转换则是在不修改原数据类型内容情况下将源数据类型解释为另外一种类型 比如: float f=as_float(0x3f800000); //将一个4字节整型数字0x3f800000

1.5K31

Java面试集合(四)

字面量 字面量:指的是在计算机不可变1.整数常量(所有的整数) 2.小数常量(所有的小数) 3.字符常量(将一个字母、数字、符号,用 ‘’ 标识起来) 4.字符串常量(将一个或者多个字符用...1) 进制间转化 十进制二进制:不断除以2,然后取余数 二进制十进制:最低位依次乘以2位次次幂,然后求和 同理: 十进制其他进制:除以对应进制数,然后取余数 其他进制十进制:最低位依次开始...口诀:三一 八进制二进制,每一位八进制数都会产生三位二进制数字,不足三位就补0即可。 口诀:一三 同理 二进制十六位进制:口诀为四一 十六位进制二进制:口诀为一四 9....数据类型:基本数据类型 和 引用数据类型 基本数据类型 byte-1 short-2 int-4 long-8 float-4 double-8 char-2 boolean long---l...数据类型转换 数据类型转换: 自动类型转换 / 隐式转换 强制类型转换 / 显式转换 自动类型转换:小类型可以自动转为大类型 大包围小 char可以转换为int,long可以转换为float

1.2K20

Python数据类型怎么转换?数据类型转换函数命令示语句及常见问题

span 当我们做变量赋值操作时,等号右边值默认是字符串类型。在某些情况下,我们需要转换数据类型Python数据类型怎么转换?...数据类型转换语句 函数 说明 int(x [,base ]) 将x转换为一个整数 float(x) 将x转换为一个浮点数 str(x) 将对象x转换为字符串 解释:就是把一些值转换成特定数据类型,例如把字符串...'123' 转换成数字123 举例: #提示用户录入他年龄,然后打印他10年多少岁 #1.提示用户录入年龄并接收 ageStr = input('请录入您年龄:') #2.将字符串数字转换成...int数字 age = int(ageStr) # '33' --> 33 如果不转换会报错 #3.打印结果 print(f'您年龄是{age},10年年龄是{age + 10...巧妙使用eval函数,就可以不用去记像intfloat、bool等这样类型单词了。 扩展知识 Q:任何类型都可以转换成字符串,对不对? A:正确。 Q:字符串可以随意转换成数字,对不对?

74420

初识python脚本#学习猿地

''' ``` ### 2.数字类型 + int 整型 + float 浮点类型 + complex 复数 + bool 布尔类型(True,False) ```python # 数字类型 Number...+ 把一个数据类型换为另一个数据类型,例如 字符串转为数字 + 为什么需要数据类型转换? + 因为不同数据类型之间不能运算 + 数据类型转换形式?...) ``` ### 强制类型转换 > python每个数据类型都有对应方法,可以对数据类型进行转换 + str() 可以把所有的其它数据类型换为字符串类型 + int() 字符串转数字类型时,如果字符串时纯数字...,可以转换 + 其它容器类型不能转为数字int类型 + float() 浮点类型转换和int类型一样,不过转换结果是浮点类型 + bool() 可以把其它类型转换布尔类型True或False...+ 总结,哪些情况bool结果是 False + `'',0,0.0,False,[],{},(),set()` + list() 列表 + 数字类型是 非容器类型,不能转换为列表

1.3K30

初识python脚本#学习猿地

''' ``` ### 2.数字类型 + int  整型 + float 浮点类型 + complex 复数 + bool 布尔类型(True,False) ```python # 数字类型 Number...+ 把一个数据类型换为另一个数据类型,例如 字符串转为数字 + 为什么需要数据类型转换?   + 因为不同数据类型之间不能运算 + 数据类型转换形式?   ...) ``` ### 强制类型转换 > python每个数据类型都有对应方法,可以对数据类型进行转换 + str() 可以把所有的其它数据类型换为字符串类型 + int() 字符串转数字类型时,如果字符串时纯数字...,可以转换   + 其它容器类型不能转为数字int类型 + float() 浮点类型转换和int类型一样,不过转换结果是浮点类型 + bool() 可以把其它类型转换布尔类型True或False...  + 总结,哪些情况bool结果是 False   + `'',0,0.0,False,[],{},(),set()` + list() 列表   + 数字类型是 非容器类型,不能转换为列表

1.3K20

数字 20 例

施工谈论数字开始 整数 Python2 有取值范围,溢出自动转为长整型 Python3 为长整型,无位数限制 理论上内存有多大,位数可能就有多大 长整数 Python2 单独对应 Long 类型...Python3 不再有Long ,直接对应 int 浮点数 带小数数字 如果不带数字,可能有 e 和 E 复数 高数复数 结构为:1+2j ?...+1 Out[8]: 7.04 In [9]: 1+_ Out[9]: 8.04 6 十二 将十进制转换为二进制: >>> bin(10) '0b1010' 7 十八 十进制转换为八进制: >>...> oct(9) '0o11' 8 十十六 十进制转换为十六进制: >>> hex(15) '0xf' 9 转为浮点类型 整数或数值型字符串转换为浮点数 >>> float(3) 3.0 如果不能转化为浮点数...,所以也归并到数字这个讨论小节

1.3K10

float 存储金额,老板说损失工资里扣!

老板,用float做计算造成公司损失往你工资里扣。 ? 哼,扣工资就扣工资。但还是得静下心来想想为什么不能用float。...计算机只认识0和1,所有类型计算首先会转化为二进制计算。...所以float规定化值为127 6.6二进制值规约化以后为1.1010011001*2^2,指数是2,所以偏移值就是127+2=129,转换为二进制就是10000001。...不能使用float那用什么类型存储金额? 使用int 数据库存储是金额分值,显示时候在转化为元。Java运算神器BigDecimal,这篇也推荐看下。...使用decimal mysqldecimal存储类型使用 column_name decimal(P,D); D:代表小数点位数 P:有效数字精度,小数点也算一位 测试例子 数据表创建

72310
领券