Python 26进制计算实现方法

yipeiwu_com6年前Python基础

本文实例讲述了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程序设计有所帮助。

相关文章

采用Psyco实现python执行速度提高到与编译语言一样的水平

本文实例讲述了采用Psyco实现python执行速度提高到与编译语言一样的水平的方法,分享给大家供大家参考。具体实现方法如下: 一、安装Psyco很简单,它有两种安装方式,一种是源码方式...

python从入门到精通(DAY 2)

1、字典复制: dict = {'name':'wang', 'sex':'m', 'age':34, 'job':'it'} info = dict ##别名 (二个字...

pyqt5中QThread在使用时出现重复emit的实例

在PyQt5中使用QThread的时候,要注意把所有QThread的对象在主类中的init(或者放在所有类函数的外面)中进行实例化,不然可能在多个QThread互相调用的时候,emit重...

浅谈python之高阶函数和匿名函数

map() map()函数接收两个参数,一个是函数,一个是Iterable,map将传入的函数依次作用到序列的每个元素,并把结果作为新的Iterator返回。 def func(x)...

python实现定时自动备份文件到其他主机的实例代码

python实现定时自动备份文件到其他主机的实例代码

定时将源文件或目录使用WinRAR压缩并自动备份到本地或网络上的主机 1.确保WinRAR安装在默认路径或者把WinRAR.exe添加到环境变量中 2.在代码里的sources填写备份的...