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的装饰器解决Bottle框架中用户验证问题
Apr 24 Python
Python调用ctypes使用C函数printf的方法
Aug 23 Python
python实现mysql的读写分离及负载均衡
Feb 04 Python
python学生信息管理系统
Mar 13 Python
python3.6使用urllib完成下载的实例
Dec 19 Python
使用PyQt4 设置TextEdit背景的方法
Jun 14 Python
Python numpy数组转置与轴变换
Nov 15 Python
Python 寻找局部最高点的实现
Dec 05 Python
python中Ansible模块的Playbook的具体使用
May 28 Python
浅谈keras中的目标函数和优化函数MSE用法
Jun 10 Python
详解Pandas 处理缺失值指令大全
Jul 30 Python
Pandas-DataFrame知识点汇总
Mar 16 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更改目录及子目录下所有的文件后缀扩展名的代码
2010/10/12 PHP
Zend Framework实现Zend_View集成Smarty模板系统的方法
2016/03/05 PHP
RR vs IO BO3 第二场2.13
2021/03/10 DOTA
Javascript 遮罩层和加载效果代码
2013/08/01 Javascript
采用call方式实现js继承
2014/05/20 Javascript
jQuery中before()方法用法实例
2014/12/25 Javascript
JavaScript自定义等待wait函数实例分析
2015/03/23 Javascript
jQuery each函数源码分析
2016/05/25 Javascript
jQuery插件DataTable使用方法详解(.Net平台)
2016/12/22 Javascript
dropload.js插件下拉刷新和上拉加载使用详解
2017/10/20 Javascript
React组件refs的使用详解
2018/02/09 Javascript
angular 服务随记小结
2019/05/06 Javascript
js设置鼠标悬停改变背景色实现详解
2019/06/26 Javascript
Javascript 对象(object)合并操作实例分析
2019/07/30 Javascript
vue项目打包后请求地址错误/打包后跨域操作
2020/11/04 Javascript
JQuery+drag.js上传图片并且实现图片拖曳
2020/11/18 jQuery
Python实现统计单词出现的个数
2015/05/28 Python
Python的Twisted框架上手前所必须了解的异步编程思想
2016/05/25 Python
python cx_Oracle模块的安装和使用详细介绍
2017/02/13 Python
python命令行解析之parse_known_args()函数和parse_args()使用区别介绍
2018/01/24 Python
Django框架的中的setting.py文件说明详解
2018/10/15 Python
实例详解Python装饰器与闭包
2019/07/29 Python
弄懂这56个Python使用技巧(轻松掌握Python高效开发)
2019/09/18 Python
你还在@微信官方?聊聊Python生成你想要的微信头像
2019/09/25 Python
python实现大学人员管理系统
2019/10/25 Python
Django实现基于类的分页功能
2019/10/31 Python
Python性能分析工具py-spy原理用法解析
2020/07/27 Python
Django中和时区相关的安全问题详解
2020/10/12 Python
一款利用html5和css3实现的3D立方体旋转效果教程
2016/04/26 HTML / CSS
优秀学生干部推荐材料
2014/02/03 职场文书
公立医院改革实施方案
2014/03/14 职场文书
班主任对学生的评语
2014/04/26 职场文书
公司人事专员岗位职责
2014/08/11 职场文书
工作证明英文模板
2014/10/21 职场文书
2016年春节慰问信息大全
2015/11/30 职场文书
pytorch锁死在dataloader(训练时卡死)
2021/05/28 Python