Python 26进制计算实现方法
本文实例讲述了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']=5 dict['F']=6 dict['G']=7 dict['H']=8 dict['I']=9 dict['J']=10 dict['K']=11 dict['L']=12 dict['M']=13 dict['N']=14 # .....其他字母 def count_(s): p=len(s)-1 count=0 for x in xrange(len(s)): count+=get(x)*dict[s[p-x]] return count def get(p): return 26**p print count_('AC')
在上面的代码中,利用的字典来映射每个字母的含义。当然也可以每次计算每个字母代表的数字。但是会有效率问题。
希望本文所述对大家的Python程序设计有所帮助。
相关推荐
-
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
-
Python中不同进制的语法及转换方法分析
本文实例讲述了Python中不同进制的语法及转换方法.分享给大家供大家参考,具体如下: 不同进制的书写方式 ① 八进制(Octal) 0o377 ② 十六进制(Hex) 0xFF ③ 二进制(Binary) 0b11111111 不同进制之间的转换 Python提供了三个内置的函数,可以用来在不同进制间做转换. >>> oct(255), hex(255), bin(255) ('0o377', '0xff', '0b11111111') 还可以使用int函数,把字符串转成数值 >
-
python实现基本进制转换的方法
本文实例讲述了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
-
使用Python进行新浪微博的mid和url互相转换实例(10进制和62进制互算)
不过,status中包含了一个mid字段,通过mid,我们实际上是可以通过计算得到url的. 在开始计算之前有必要说明一下,什么是base62编码.它实际上就是十进制和62位进制的互换.对于62进制,从0数到9以后,10用小写字母a表示,接着数完26个字母,到z为35,然后36为大写字母A,一直到61为大写字母Z.所以,我们可以实现十进制数字base62编码的encode和decode.下面的代码实际上来自stackoverflow: 复制代码 代码如下: ALPHABET = "0123456
-
python读写二进制文件的方法
本文实例讲述了python读写二进制文件的方法.分享给大家供大家参考.具体如下: 初学python,现在要读一个二进制文件,查找doc只发现 file提供了一个read和write函数,而且读写的都是字符串,如果只是读写char等一个字节的还行,要想读写如int,double等多字节数 据就不方便了.在网上查到一篇贴子,使用struct模块里面的pack和unpack函数进行读写.下面就自己写代码验证一下. >>> from struct import * >>> fi
-
Python实现的十进制小数与二进制小数相互转换功能
本文实例讲述了Python实现的十进制小数与二进制小数相互转换功能.分享给大家供大家参考,具体如下: 十进制小数 ⇒ 二进制小数 乘2取整 对十进制小数乘2得到的整数部分和小数部分, 整数部分即是相应的二进制数码, 再用2乘小数部分(之前乘后得到新的小数部分),又得到整数和小数部分. 如此不断重复,直到小数部分为0或达到精度要求为止. 第一次所得到为最高位,最后一次得到为最低位 如: 0.25的二进制 0.25*2=0.5 取整是0 0.5*2=1.0 取整是1 即0.25的二进制为
-
python3图片转换二进制存入mysql
首先,在数据库中创建一个表,用于存放图片: 复制代码 代码如下: 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实现各进制转换的总结大全
前言 玩ctf经常遇到进制转换的问题,就正好做一个进制转换总结,分享出来供大家参考学习,下面来一起看看详细的介绍: 字符串与十六进制转换 例如百度ctf 12月的第二场第一个misc 666C61677B65633862326565302D336165392D346332312D613031322D3038616135666137626536377D 比较简单的一种做法就是直接调用字符串的.decode('hex')解密即可, 但如果不用这个函数你会怎么解呢? 一种思路就是先2个分组,解出每组的
-
使用Python内置的模块与函数进行不同进制的数的转换
binascii 模块: 它包含一个把二进制数值转换成十六进制的函数,同样也可以反过来转. #binary_value是二进制数值不是字符串,也不是int型的1010 binascii.b2a_hex(binary_value) ##binary_value 一般读二进制文件可以得到 >>'89' <type str> python自带的builtin函数: bin(num) 十进制数值 ===>二进制字符串 bin(10) >> '0b1010' <t
-
Python中不同进制互相转换(二进制、八进制、十进制和十六进制)
在我的印象里面进制互相转换确实是很常见的问题,所以在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
随机推荐
- 充分利用ASP.NET的三种缓存提高站点性能的注意方法
- ASP.NET Core 导入导出Excel xlsx 文件实例
- php 多线程上下文中安全写文件实现代码
- php生成随机数的三种方法
- python基础教程之lambda表达式使用方法
- C#巧用DateTime预设可选的日期范围(如本年度、本季度、本月等)
- vue实现全选和反选功能
- Bootstrap每天必学之工具提示(Tooltip)插件
- 浅谈JavaScript Array对象
- Jquery实现textarea根据文本内容自适应高度
- 微信小程序 实现列表项滑动显示删除按钮的功能
- JDBC链接数据库的几个步骤
- Android使用animator实现fragment的3D翻转效果
- 使用Vue.js和Flask来构建一个单页的App的示例
- 对Python中DataFrame按照行遍历的方法
- 基于Ubuntu 18.04配置固定IP的方法教程
- 小程序实现左滑删除效果
- python3 写一个WAV音频文件播放器的代码
- 详解基于iview-ui的导航栏路径(面包屑)配置
- Linux中把用户添加到组的4个方法总结