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之入门(二)基本数据类型
May 25 Python
Python开发的HTTP库requests详解
Aug 29 Python
对numpy中array和asarray的区别详解
Apr 17 Python
django中使用Celery 布式任务队列过程详解
Jul 29 Python
Python hashlib常见摘要算法详解
Jan 13 Python
matplotlib 曲线图 和 折线图 plt.plot()实例
Apr 17 Python
python针对Oracle常见查询操作实例分析
Apr 30 Python
python读取图像矩阵文件并转换为向量实例
Jun 18 Python
如何使用Python调整图像大小
Sep 26 Python
python代码实现图书管理系统
Nov 30 Python
Python爬取你好李焕英豆瓣短评生成词云的示例代码
Feb 24 Python
详解Python自动化之文件自动化处理
Jun 21 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的加密方式及原理
2012/06/14 PHP
使用PHP会话(Session)实现用户登陆功能
2013/06/29 PHP
CodeIgniter启用缓存和清除缓存的方法
2014/06/12 PHP
雄兵连第三季海报曝光,艾妮熙德成主角,蔷薇新造型
2021/03/09 国漫
jquery选择checked在ie8普通模式下的问题
2014/02/12 Javascript
jQuery 处理页面的事件详解
2015/01/20 Javascript
javascript面向对象程序设计(一)
2015/01/29 Javascript
javascript中Math.random()使用详解
2015/04/15 Javascript
JS实现简单的键盘打字的效果
2015/04/24 Javascript
jQuery+css3实现Ajax点击后动态删除功能的方法
2015/08/10 Javascript
js jquery获取当前元素的兄弟级 上一个 下一个元素
2015/09/01 Javascript
Prototype框架详解
2015/11/25 Javascript
jQuery中hover与mouseover和mouseout的区别分析
2015/12/24 Javascript
判断数组是否包含某个元素的js函数实现方法
2016/05/19 Javascript
JS弹出新窗口被拦截的解决方法
2016/08/09 Javascript
浅谈JS中String()与 .toString()的区别
2016/10/20 Javascript
js异步编程小技巧详解
2017/08/14 Javascript
Vue表情输入组件 微信face表情组件
2019/02/11 Javascript
Js通过AES加密后PHP用Openssl解密的方法
2019/07/12 Javascript
Vue 通过公共字段,拼接两个对象数组的实例
2019/11/07 Javascript
vue 手机物理监听键+退出提示代码
2020/09/09 Javascript
Python3.6+Django2.0以上 xadmin站点的配置和使用教程图解
2019/06/04 Python
Python 3 判断2个字典相同
2019/08/06 Python
python 扩展print打印文件路径和当前时间信息的实例代码
2019/10/11 Python
python实现删除列表中某个元素的3种方法
2020/01/15 Python
python中翻译功能translate模块实现方法
2020/12/17 Python
纽约市的奢华内衣目的地:Anya Lust
2019/08/02 全球购物
意大利买卖二手奢侈品网站:LAMPOO
2020/06/03 全球购物
个人自我鉴定写法
2013/11/30 职场文书
旅游节目策划方案
2014/05/26 职场文书
2014年煤矿安全工作总结
2014/12/04 职场文书
2014年污水处理厂工作总结
2014/12/19 职场文书
大学推普周活动总结
2015/05/07 职场文书
2015年幼儿教师个人工作总结
2015/05/20 职场文书
导游词之西湖雷峰塔
2019/09/18 职场文书
vue项目两种方式实现竖向表格的思路分析
2021/04/28 Vue.js