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 multiprocessing模块中的Pipe管道使用实例
Apr 11 Python
Python求导数的方法
May 09 Python
举例讲解Python面相对象编程中对象的属性与类的方法
Jan 19 Python
基于python 字符编码的理解
Sep 02 Python
Python实现PS滤镜的万花筒效果示例
Jan 23 Python
python虚拟环境的安装和配置(virtualenv,virtualenvwrapper)
Aug 09 Python
在tensorflow中实现去除不足一个batch的数据
Jan 20 Python
完美解决pycharm 不显示代码提示问题
Jun 02 Python
Python使用xlrd实现读取合并单元格
Jul 09 Python
python3爬虫中异步协程的用法
Jul 10 Python
Django框架实现在线考试系统的示例代码
Nov 30 Python
Python matplotlib多个子图绘制整合
Apr 13 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.ini 配置文件的深入解析
2013/06/17 PHP
php调用google接口生成二维码示例
2014/04/28 PHP
PHP入门教程之操作符与控制结构流程详解
2016/09/09 PHP
利用PHP生成CSV文件简单示例
2016/12/21 PHP
jquery ui dialog里调用datepicker的问题
2009/08/06 Javascript
IE图片缓存document.execCommand("BackgroundImageCache",false,true)
2011/03/01 Javascript
深入理解JavaScript系列(1) 编写高质量JavaScript代码的基本要点
2012/01/15 Javascript
javascript中键盘事件用法实例分析
2015/01/30 Javascript
js实现ifram取父窗口URL地址的方法
2015/02/09 Javascript
如何使用HTML5地理位置定位功能
2015/04/27 Javascript
jQuery使用$.ajax进行即时验证实例详解
2015/12/11 Javascript
简单的JS轮播图代码
2016/07/18 Javascript
聊聊JavaScript如何实现继承及特点
2017/04/07 Javascript
Three.js利用顶点绘制立方体的方法详解
2017/09/27 Javascript
javascript实现电脑和手机版样式切换
2017/11/10 Javascript
webpack多页面开发实践
2017/12/18 Javascript
webpack-dev-server自动更新页面方法
2018/02/22 Javascript
vue使用xe-utils函数库的具体方法
2018/03/06 Javascript
基于javascript实现贪吃蛇小游戏
2019/11/25 Javascript
python 3.6 tkinter+urllib+json实现火车车次信息查询功能
2017/12/20 Python
简单了解python元组tuple相关原理
2019/12/02 Python
打印tensorflow恢复模型中所有变量与操作节点方式
2020/05/26 Python
python中函数返回多个结果的实例方法
2020/12/16 Python
CSS3制作hover下划线动画
2017/03/27 HTML / CSS
党的群众路线教育实践活动心得体会900字
2014/03/07 职场文书
给校长的建议书
2014/03/12 职场文书
家长会演讲稿
2014/04/26 职场文书
拒绝黄毒毒宣传标语
2014/06/26 职场文书
老龄工作先进事迹
2014/08/15 职场文书
股指期货心得体会
2014/09/10 职场文书
2014年科技工作总结
2014/11/26 职场文书
任命通知范文
2015/04/21 职场文书
2015年乡镇工作总结范文
2015/04/22 职场文书
AJAX学习笔记
2021/05/18 Javascript
javascript实现计算器功能详解流程
2021/11/01 Javascript
vscode内网访问服务器的方法
2022/06/28 Servers