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程序设计有所帮助。

相关文章

浅谈Python中的可迭代对象、迭代器、For循环工作机制、生成器

浅谈Python中的可迭代对象、迭代器、For循环工作机制、生成器

1.iterable iterator区别 要了解两者区别,先要了解一下迭代器协议: 迭代器协议是指:对象需要提供__next__()方法,它返回迭代中的元素,在没有更多元素后,抛出St...

详谈Python中列表list,元祖tuple和numpy中的array区别

1.列表 list是处理一组有序项目的数据结构,即你可以在一个列表中存储一个序列的项目。列表中的项目。列表中的项目应该包括在方括号中,这样python就知道你是在指明一个列表。一旦你创建...

python中urlparse模块介绍与使用示例

简介 urlparse模块主要是用于解析url中的参数  对url按照一定格式进行 拆分或拼接。urlparse库用于把url解析为各个组件,支持file,ftp,http,h...

Python如何为图片添加水印

Python如何为图片添加水印

添加水印的主要目的是为了版权保护,使自己的图像不被抄袭或者恶意转载。网上有很多制作水印的工具,本帖介绍怎么使用Python-Pillow库给图片添加水印。 使用ImageMagick添加...

Python wxPython库Core组件BoxSizer用法示例

Python wxPython库Core组件BoxSizer用法示例

本文实例讲述了Python wxPython库Core组件BoxSizer用法。分享给大家供大家参考,具体如下: wx.BoxSizer: box = wx.BoxSizer(int...