python3实现短网址和数字相互转换的方法


Posted in Python onApril 28, 2015

本文实例讲述了python3实现短网址和数字相互转换的方法。分享给大家供大家参考。具体实现方法如下:

import math
import decimal
def convert_to_code(num):
  """
  将数字转换为代码
  """
  def get_num(num, out=''):
    num = decimal.Decimal(num)
    codes = "abcdefghjkmnpqrstuvwxyz23456789ABCDEFGHJKMNPQRSTUVWXYZ"
    if num > 53:
      key = num % 54
      num = math.floor(num / 54) - 1
      return get_num(num, codes[int(key)] + out)
    else:
      return codes[int(num)] + out
  return get_num(num)
def convert_to_num(code):
  """
  将代码转为数字
  """
  import math
  codes = "abcdefghjkmnpqrstuvwxyz23456789ABCDEFGHJKMNPQRSTUVWXYZ"
  num = 0
  num = decimal.Decimal(num)
  i = len(code)
  for char in code:
    i -= 1
    pos = codes.find(char)
    num += (54 ** i) * (pos + 1)
  num -= 1
  # 任意数的 0 次方等于1,所以需要减去
  return int(num)

希望本文所述对大家的Python程序设计有所帮助。

Python 相关文章推荐
python 实现插入排序算法
Jun 05 Python
python实现超简单端口转发的方法
Mar 13 Python
详解Python中break语句的用法
May 14 Python
python基于BeautifulSoup实现抓取网页指定内容的方法
Jul 09 Python
深入学习Python中的装饰器使用
Jun 20 Python
分享Python开发中要注意的十个小贴士
Aug 30 Python
Python读取文件内容的三种常用方式及效率比较
Oct 07 Python
用python处理MS Word的实例讲解
May 08 Python
tensorflow实现加载mnist数据集
Sep 08 Python
解决pycharm运行程序出现卡住scanning files to index索引的问题
Jun 27 Python
Python Handler处理器和自定义Opener原理详解
Mar 05 Python
解决python中显示图片的plt.imshow plt.show()内存泄漏问题
Apr 24 Python
python实现从网络下载文件并获得文件大小及类型的方法
Apr 28 #Python
浅析Python中的多重继承
Apr 28 #Python
python输出当前目录下index.html文件路径的方法
Apr 28 #Python
Python实现基于权重的随机数2种方法
Apr 28 #Python
python使用urllib2实现发送带cookie的请求
Apr 28 #Python
python实现在windows下操作word的方法
Apr 28 #Python
介绍Python的@property装饰器的用法
Apr 28 #Python
You might like
[原创]php token使用与验证示例【测试可用】
2017/08/30 PHP
列表内容的选择
2006/06/30 Javascript
jQuery 常见学习网站与参考书
2009/11/09 Javascript
两种WEB下的模态对话框 (asp.net或js的分别实现)
2009/12/02 Javascript
javascript document.execCommand() 常用解析
2009/12/14 Javascript
DOM2非标准但却支持很好的几个属性小结
2012/01/21 Javascript
关于JS中二维数组的声明方法
2016/09/24 Javascript
javaScript+turn.js实现图书翻页效果实例代码
2017/02/16 Javascript
利用ES6语法重构React组件详解
2017/03/02 Javascript
JavaScript实现三级联动菜单实例代码
2017/06/26 Javascript
JavaScript转换数据库DateTime字段类型方法
2017/06/27 Javascript
AngularJs 最新验证手机号码的实例,成功测试通过
2017/11/26 Javascript
Vue.js实现表格渲染的方法
2018/09/07 Javascript
基于javascript的拖拽类封装详解
2019/04/19 Javascript
ES6 Object.assign()的用法及其使用
2020/01/18 Javascript
JavaScript实现Excel表格效果
2020/02/07 Javascript
jquery实现烟花效果(面向对象)
2020/03/10 jQuery
谈谈我在vue-cli3中用预渲染遇到的坑
2020/04/22 Javascript
[00:43]2016完美“圣”典风云人物:单车宣传片
2016/12/02 DOTA
仅用50行Python代码实现一个简单的代理服务器
2015/04/08 Python
python中format()函数的简单使用教程
2018/03/14 Python
Python3爬虫学习入门教程
2018/12/11 Python
基于python cut和qcut的用法及区别详解
2019/11/22 Python
用60行代码实现Python自动抢微信红包
2021/02/04 Python
详解使用scrapy进行模拟登陆三种方式
2021/02/21 Python
美国最大点评网站:Yelp
2018/02/14 全球购物
Hobbs官方网站:英国奢华女性时尚服装
2020/02/22 全球购物
南京某公司笔试题
2013/01/27 面试题
历史系毕业生自荐信
2013/10/28 职场文书
2014高考励志标语
2014/06/05 职场文书
北京奥运会主题口号
2014/06/13 职场文书
圣贤教育改变命运观后感
2015/06/16 职场文书
保护动物的宣传语
2015/07/13 职场文书
2015年支教教师工作总结
2015/07/22 职场文书
CSS3实现的侧滑菜单
2021/04/27 HTML / CSS
Centos7中MySQL数据库使用mysqldump进行每日自动备份的编写
2021/08/02 MySQL