(一)Python入门-2编程基本概念:08整数-不同进制-其他类型转换成整数

一:整数-不同进制

  Python中,除10 进制,还有其他三种进制:

  ·0b或0B,二进制 0 1

  ·0o 或0O,八进制 0 1 2 3 4 5 6 7

  ·0x或 0X,十六进制 0 1 2 3 4 5 6 7 8 9 a b c d e f

这三种进制可以非常方便的进行“位运算”操作。位运算知识后面介绍。

  【操作】测试不同进制

 1 >>> 12
 2 12
 3 >>> 0b101
 4 5
 5 >>> 0o19
 6 SyntaxError: invalid syntax
 7 >>> 0o10
 8 8
 9 >>> 0xf
10 15
11 >>> oxff
12 Traceback (most recent call last):
13   File "<pyshell#39>", line 1, in <module>
14     oxff
15 NameError: name ‘oxff‘ is not defined
16 >>> 0xff
17 255
18 >>> 0x10
19 16

二:类型转换

  使用int()实现类型转换:

  1. 浮点数直接舍去小数部分。如:int(9.9)结果是:9

  2. 布尔值True转为1,False转为 0。 如:int(True)结果是 1

  3. 字符串符合整数格式(浮点数格式不行)则直接转成对应整数,否则报错。

  【操作】

 1 >>> int("456")
 2 456
 3 >>> int("456abc")
 4 Traceback (most recent call last):
 5   File "<pyshell#43>", line 1, in <module>
 6     int("456abc")
 7 ValueError: invalid literal for int() with base 10: ‘456abc‘
 8 >>> int("456.78")
 9 Traceback (most recent call last):
10   File "<pyshell#44>", line 1, in <module>
11     int("456.78")
12 ValueError: invalid literal for int() with base 10: ‘456.78‘
13 >>> int(9.9)
14 9
15 >>> int(True)
16 1
17 >>> int(False)
18 0

  自动转型:

  整数和浮点数混合运算时,表达式结果自动转型成浮点数。比如:2+8.0 的结果是 10.0

  整数可以有多大?

  Python2 中,int 是 32 位,可以存储从-2147483648 到 2147483647 的整数(约± 21亿)。Long类型是64 位,可以存储:-2^63--2^63-1 之间的数值。

  Python3 中,int 可以存储任意大小的整数,long 被取消。我们甚至可以存储下面的 值:

1 >>> googol = 10**100
2 >>> googol
3 10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000
4 >>> 

  Googol 也是 Google 最初的名字,这也是Google 最初的含义。

Python3 中可以做超大数的计算,而不会造成“整数溢出”,这也是 Python 特别适合科学运算的特点。

  

原文地址:https://www.cnblogs.com/jack-zh/p/10810481.html

时间: 2024-10-11 14:04:25

(一)Python入门-2编程基本概念:08整数-不同进制-其他类型转换成整数的相关文章

(一)Python入门-2编程基本概念:01程序的构成

一:Python程序的构成 Python程序由模块组成.一个模块对应 一个python源文件,一般后缀名是:.py. 模块由语句组成.运行 Python 程序时,按照模块中语句的顺序依次执行. 语句是Python程序的构造单元,用于创建对象.变量赋值.调用函数.控制语句等. 二:Python文件的创建和执行 之前使用的交互式环境,每次只能执行一条语句:为了编写多条语句实现复杂的逻辑, 可以通过创建 Python 文件,并执行该文件. 在 IDLE 环境中,可以通过 File-->new 创建 P

(一)Python入门-2编程基本概念:13字符串-Unicode字符集-三种创建字符串的方式-len()

一:字符串基本特点 很多人初学编程时,总是担心自己数学不行,潜意识里认为数学好才能编程.实际上, 大多数程序员打交道最多的是“字符串”而不是“数字”.因为,编程是用来解决现实问题 的,因此逻辑思维的重要性远远超过数学能力. 字符串的本质是:字符序列.Python的字符串是不可变的,我们无法对原字符串做任何修改.但,可以将字符串的一部分复制到新创建的字符串,达到“看起来修改”的效果. Python不支持单字符类型,单字符也是作为一个字符串使用的.Python中字符串是基本数据类型. 二:字符串的编

(一)Python入门-2编程基本概念:10时间表示-unix时间点-毫秒和微妙-time模块

一:时间表示 计算机中时间的表示是从“1970 年 1月 1日 00:00:00”开始,以毫秒(1/1000 秒) 进行计算.我们也把1970 年这个时刻成为“unix 时间点”. 这样,我们就把时间全部用数字来表示了.时间本质上就是数字 python中可以通过 time.time() 获得当前时刻,返回的值是以秒为单位,带微秒 (1/1000 毫秒)精度的浮点值.例如:1530167364.8566. [操作] 1 >>> import time 2 >>> b =

(一)Python入门-2编程基本概念:18字符串-驻留机制-内存分析-字符串同一判断-值相等判断

一:字符串驻留 仅保存一份相同且不可变字符串的方法,不同的值被存放在字符串驻留池中. Python 支持字符串驻留机制,对于符合标识符规则的字符串(仅包含下划线(_).字母 和数字)会启用字符串驻留机制驻留机制. 二:字符串比较和同一性 我们可以直接使用==,!=对字符串进行比较,是否含有相同的字符. 我们使用is / not is,判断两个对象是否为同一个对象.比较的是对象的地址,即 id(obj1)是 否和 id(obj2)相等. 三:成员操作符 in /not in 关键字,判断某个字符(

(一)Python入门-2编程基本概念:12同一运算符-整数缓存问题

一:同一运算符 同一运算符用于比较两个对象的存储单元,实际比较的是对象的地址. 运算符 描述 is  is是判断两个标识符是不是引用同一个对象 is not  is not 是判断两个标识符是不是引用不同对象 is 与 == 区别: is 用于判断两个变量引用对象是否为同一个,既比较对象的地址. == 用于判断两个变量引用对象的值是否相等,默认调用对象的 __eq__()方法. 二:整数缓存问题 Python仅仅对比较小的整数对象进行缓存(范围为[-5, 256])缓存起来,而并非是所有整数对象

(一)Python入门-2编程基本概念:07内置数据类型-基本算数运算符

一:Python内置数据类型 每个对象都有类型,python中最基本的内置数据类型: 1. 整型:整数,2345,10,50 2. 浮点型:小数,3.14 或者科学计数法 314e-2 3. 布尔型:表示真假,仅包含:True.False 4. 字符串型:由字符组成的序列. “abc”,”speed”,“我爱你” 二:数字和基本运算符 Python 支持整数(如:50,520)和浮点数(如:3.14,10.0, 1.23e2),我们可以对数字做如下 运算. 运算符 说明 示例 结果 + 加法 3

(一)Python入门-2编程基本概念:11布尔值-比较运算符-逻辑运算符及短路问题

一:布尔值 Python2中没有布尔值,直接用数字 0表示 False,用数字1 表示True. Python3中,把 True和 False 定义成了关键字,但他们的本质还是 1和 0,甚至可以和数字相加. 1 >>> a = True 2 >>> b=4 3 >>> a+b 4 5 二:比较运算符 所有比较运算符返回1表示真,返回0表示假.这分别与特殊的变量True和False等价. 以下假设变量a为15,变量b为 30: 运算符 描述 示例 ==

(一)Python入门-2编程基本概念:16字符串-切片slice操作-逆序

一:字符串切片slice操作 切片 slice 操作可以让我们快速的提取子字符串.标准格式为: [起始偏移量start:终止偏移量end:步长 step] 典型操作(三个量为正数的情况)如下: 操作和说明 示例 结果 [:] 提取整个字符串 “abcdef”[:] “abcdef” [start:]从start 索引开始到结尾 “abcdef”[2:] “cdef” [:end]从头开始直到end-1 “abcdef”[:2] “ab” [start:end]从start 到 end-1  “a

(一)Python入门-2编程基本概念:17字符串-split()分割-join()合并-join()效率测试

一:split()分割 split()可以基于指定分隔符将字符串分隔成多个子字符串(存储到列表中).如果不指定分隔 符,则默认使用空白字符(换行符/空格/制表符).示例代码如下: 1 >>> a = "to be not to be" 2 3 >>> a.split() 4 5 ['to', 'be', 'not', 'to', 'be'] 6 >>> a.split("be") 7 8 ['to ', ' no