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中合并两个文本文件并按照姓名首字母排序的例子
Apr 25 Python
Python实现发送email的几种常用方法
Aug 18 Python
Cpy和Python的效率对比
Mar 20 Python
对matplotlib改变colorbar位置和方向的方法详解
Dec 13 Python
python使用插值法画出平滑曲线
Dec 15 Python
pyqt5 删除layout中的所有widget方法
Jun 25 Python
python按键按住不放持续响应的实例代码
Jul 17 Python
django框架F&Q 聚合与分组操作示例
Dec 12 Python
SpringBoot实现登录注册常见问题解决方案
Mar 04 Python
Numpy 理解ndarray对象的示例代码
Apr 03 Python
Python word文本自动化操作实现方法解析
Nov 05 Python
Python实现简单的俄罗斯方块游戏
Sep 25 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脚本的10个技巧(3)
2006/10/09 PHP
TMDPHP 模板引擎使用教程
2012/03/13 PHP
PHP获取某个月最大天数(最后一天)的方法
2015/07/29 PHP
php生成与读取excel文件
2016/10/14 PHP
PHP新特性之字节码缓存和内置服务器
2017/08/11 PHP
PHP实现将几张照片拼接到一起的合成图片功能【便于整体打印输出】
2017/11/14 PHP
javascript:void(0)的真正含义实例分析
2008/08/20 Javascript
JS获取鼠标坐标的实例方法
2013/07/18 Javascript
js判读浏览器是否支持html5的canvas的代码
2013/11/18 Javascript
Javascript Ajax异步读取RSS文档具体实现
2013/12/12 Javascript
ext combobox动态加载数据库数据(附前后台)
2014/06/17 Javascript
多个$(document).ready()的执行顺序实例分析
2014/07/26 Javascript
js中 计算两个日期间的工作日的简单实例
2016/08/08 Javascript
微信小程序 获取微信OpenId详解及实例代码
2016/10/31 Javascript
three.js实现围绕某物体旋转
2017/01/25 Javascript
jquery仿苹果的时间/日期选择效果
2017/03/08 Javascript
Element-Ui组件 NavMenu 导航菜单的具体使用
2019/10/24 Javascript
JS+DIV实现拖动效果
2020/02/11 Javascript
Vue computed 计算属性代码实例
2020/04/22 Javascript
springboot+vue实现文件上传下载
2020/11/17 Vue.js
python Django模板的使用方法(图文)
2013/11/04 Python
python实现dnspod自动更新dns解析的方法
2014/02/14 Python
用 Python 爬了爬自己的微信朋友(实例讲解)
2017/08/25 Python
Django用户认证系统 Web请求中的认证解析
2019/08/02 Python
pygame实现五子棋游戏
2019/10/29 Python
Python matplotlib 绘制双Y轴曲线图的示例代码
2020/06/12 Python
GANT葡萄牙官方商店:拥有美国运动服传统的生活方式品牌
2018/10/18 全球购物
UNIX操作系统结构由哪几部分组成
2016/02/17 面试题
项目合作协议书
2014/04/16 职场文书
机械加工与数控专业自荐书
2014/06/04 职场文书
财政局个人总结
2015/03/04 职场文书
2016大学生优秀志愿者事迹材料
2016/02/25 职场文书
德劲DE1108畅想
2021/04/22 无线电
关于nginx 实现jira反向代理的问题
2021/09/25 Servers
Win7/8.1用户可以免费升级到Windows 11系统吗?
2021/11/21 数码科技
【js设计模式】SOLID五大设计原则
2022/03/24 Javascript