python内置函数bin,Python内置函数bin() oct()等实现进制转换

Python内置函数bin() oct()等实现进制转换

使用Python内置函数:bin()、oct()、int()、hex()可实现进制转换。

先看Python官方文档中对这几个内置函数的描述:

bin(x)

Convert an integer number to a binary string. The result is a valid Python expression. If x is not a Python int object, it has to define an __index__() method that returns an integer.

oct(x)Convert an integer number to an octal string. The result is a valid Python expression. If x is not a Python int object, it has to define an __index__() method that returns an integer.

int([number | string[, base]])

Convert a number or string to an integer. If no arguments are given, return 0. If a number is given, return number.__int__(). Conversion of floating point numbers to integers truncates towards zero. A string must be a base-radix integer literal optionally preceded by ‘+' or ‘-‘ (with no space in between) and optionally surrounded by whitespace. A base-n literal consists of the digits 0 to n-1, with ‘a' to ‘z' (or ‘A' to ‘Z') having values 10 to 35. The default base is 10. The allowed values are 0 and 2-36. Base-2, -8, and -16 literals can be optionally prefixed with 0b/0B, 0o/0O, or 0x/0X, as with integer literals in code. Base 0 means to interpret exactly as a code literal, so that the actual base is 2, 8, 10, or 16, and so that int('010', 0) is not legal, while int('010') is, as well as int('010', 8).

hex(x)Convert an integer number to a hexadecimal string. The result is a valid Python expression. If x is not a Python int object, it has to define an __index__() method that returns an integer.↓

2进制

8进制

10进制

16进制

2进制

-

bin(int(x, 8))

bin(int(x, 10))

bin(int(x, 16))

8进制

oct(int(x, 2))

-

oct(int(x, 10))

oct(int(x, 16))

10进制

int(x, 2)

int(x, 8)

-

int(x, 16)

16进制

hex(int(x, 2))

hex(int(x, 8))

hex(int(x, 10))

-

bin()、oct()、hex()的返回值均为字符串,且分别带有0b、0o、0x前缀。

时间: 2012-12-29

本文实例讲述了Python 26进制计算方法.分享给大家供大家参考.具体分析如下: 题目是这样的: 假设A=1,B=2,C=3...AA=27,AB=28...AAA=xxx(表示某个数字),写一个函数统计一个字符串的值是多少 # -*- coding:utf-8 -*- ''''' Created on 2013-3-29 @author: naughty ''' dict={} dict['A']=1 dict['B']=2 dict['C']=3 dict['D']=4 dict['E']

不过,status中包含了一个mid字段,通过mid,我们实际上是可以通过计算得到url的. 在开始计算之前有必要说明一下,什么是base62编码.它实际上就是十进制和62位进制的互换.对于62进制,从0数到9以后,10用小写字母a表示,接着数完26个字母,到z为35,然后36为大写字母A,一直到61为大写字母Z.所以,我们可以实现十进制数字base62编码的encode和decode.下面的代码实际上来自stackoverflow: 复制代码 代码如下: ALPHABET = "0123456

6b5aa0751a6f1e6a9d0b665a02cc1f46.gif

本文实例讲述了Python实现的十进制小数与二进制小数相互转换功能.分享给大家供大家参考,具体如下: 十进制小数 ⇒ 二进制小数 乘2取整 对十进制小数乘2得到的整数部分和小数部分, 整数部分即是相应的二进制数码, 再用2乘小数部分(之前乘后得到新的小数部分),又得到整数和小数部分. 如此不断重复,直到小数部分为0或达到精度要求为止. 第一次所得到为最高位,最后一次得到为最低位 如: 0.25的二进制 0.25*2=0.5   取整是0 0.5*2=1.0     取整是1 即0.25的二进制为

本文实例讲述了python读写二进制文件的方法.分享给大家供大家参考.具体如下: 初学python,现在要读一个二进制文件,查找doc只发现 file提供了一个read和write函数,而且读写的都是字符串,如果只是读写char等一个字节的还行,要想读写如int,double等多字节数 据就不方便了.在网上查到一篇贴子,使用struct模块里面的pack和unpack函数进行读写.下面就自己写代码验证一下. >>> from struct import * >>> fi

6b5aa0751a6f1e6a9d0b665a02cc1f46.gif

binascii 模块: 它包含一个把二进制数值转换成十六进制的函数,同样也可以反过来转. #binary_value是二进制数值不是字符串,也不是int型的1010 binascii.b2a_hex(binary_value) ##binary_value 一般读二进制文件可以得到 >>'89' python自带的builtin函数: bin(num)   十进制数值 ===>二进制字符串 bin(10) >> '0b1010'

首先,在数据库中创建一个表,用于存放图片: 复制代码 代码如下: CREATE TABLE Images(Id INT PRIMARY KEY AUTO_INCREMENT, Data MEDIUMBLOB); 然后运行如下PYTHON代码进行: 复制代码 代码如下: # -*- coding: UTF-8 -*-import MySQLdb as mdbimport systry:    #用读文件模式打开图片    fin = open("../web.jpg")    #将文本读

在我的印象里面进制互相转换确实是很常见的问题,所以在Python中,自然也少不了把下面这些代码收为util. 这是从网上搜索的一篇也的还可以的Python进制转换,经过验证可以使用.下面贴出它的实现代码: #!/usr/bin/env python # -*- coding: utf-8 -*- # 2/10/16 base trans. wrote by srcdog on 20th, April, 2009 # ld elements in base 2, 10, 16. import os

本文实例讲述了Python中不同进制的语法及转换方法.分享给大家供大家参考,具体如下: 不同进制的书写方式 ① 八进制(Octal) 0o377 ② 十六进制(Hex) 0xFF ③ 二进制(Binary) 0b11111111 不同进制之间的转换 Python提供了三个内置的函数,可以用来在不同进制间做转换. >>> oct(255), hex(255), bin(255) ('0o377', '0xff', '0b11111111') 还可以使用int函数,把字符串转成数值 >

本文实例讲述了python基本进制转换的方法.分享给大家供大家参考.具体如下: # Parsing string with base into a number is easy num = int(str, radix) # We have to write our own function for outputting to string with arbitrary base def itoa(num, radix): result = "" while num > 0: r

前言 玩ctf经常遇到进制转换的问题,就正好做一个进制转换总结,分享出来供大家参考学习,下面来一起看看详细的介绍: 字符串与十六进制转换 例如百度ctf 12月的第二场第一个misc 666C61677B65633862326565302D336165392D346332312D613031322D3038616135666137626536377D 比较简单的一种做法就是直接调用字符串的.decode('hex')解密即可, 但如果不用这个函数你会怎么解呢? 一种思路就是先2个分组,解出每组的

使用Python内置函数:bin().oct().int().hex()可实现进制转换. 先看Python官方文档中对这几个内置函数的描述: bin(x) Convert an integer number to a binary string. The result is a valid Python expression. If x is not a Python int object, it has to define an __index__() method that returns

如下所示: #coding:utf-8 import binascii a = 'worker' #先把worker转换成二进制数据然后在用十六进制表示 b = binascii.b2a_hex(a) print b #与b2a_hex相反 print binascii.a2b_hex(b) #这个功能和b2a_hex()一样 c = binascii.hexlify(a) print c #这个功能和a2b_hex()一样 print binascii.unhexlify(c) ######运

一.问题描述 如果直接用print打印bytes的话,有时候会直接显示ascii对应的字符,看起来很蛋疼. 二.运行效果 上面一行是直接用print打印的结果,很明显,第一个字节0x7b就被转换成'{'了. 三.代码 那么,如何输入上图中最后一行的格式呢,很简单: def print_hex(bytes): l = [hex(int(i)) for i in bytes] print(" ".join(l)) 以上这篇对python以16进制打印字节数组的方法详解就是小编分享给大家的全

python的内置函数中,有一对函数:chr 和 ord,有着相反的功能. 1. chr(x):用一个数值作参数,返回一个对应的unicode字符,该参数的有效范围是从0到1114111(16进制时为0x10FFFF),参数可以是十进制,也可以是十六进制. print(chr(105)) # ---> i print(chr(0x9980)) # ---> 汉字:馀 print(chr(0x0030)) # ---> 0 print(chr(8364)) # ---> € prin

C++进制转换的实例 一个面试题,要求输入十进制数,输出十六进制,可以使用printf打印%d,%c,%s来输出,但不能使用 %x 打印. 写了两种算法,还算比较简洁,粘贴在此. // 第一种算法,从低位到高位扫描移位,需要一个数组辅助倒序,一次性输出结果 #include #define MAX_HEX_NUM 16 #define OUT_DATA_LEN sizeof(int)*2 // 2个16进制数表示1个字节 static char Hex_Char_Table

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值