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

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

  ?

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32

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程序设计有所帮助。

时间: 2024-11-30 20:07:13

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

php短网址和数字之间相互转换的方法

 这篇文章主要介绍了php短网址和数字之间相互转换的方法,涉及php操作字符串的技巧,具有一定参考借鉴价值,需要的朋友可以参考下     本文实例讲述了php短网址和数字之间相互转换的方法.分享给大家供大家参考.具体实现方法如下: ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 <?php /** * 将数字转为短网址代码 * * @param

php短网址和数字之间相互转换的方法_php技巧

本文实例讲述了php短网址和数字之间相互转换的方法.分享给大家供大家参考.具体实现方法如下: <?php /** * 将数字转为短网址代码 * * @param int $number 数字 * @return string 短网址代码 */ function generate_code($number) { $out = ""; $codes = "abcdefghjkmnpqrstuvwxyz23456789ABCDEFGHJKMNPQRSTUVWXYZ"

php生成短网址的思路以及实现方法

短网址流行的已经有一段时间了,以前做新浪微博应用的时候就有接触,但没有搞清楚,最近再次接触到这个东东,仔细研究了下,发现短网址其实也挺容易的.下面就将本次对于生成短网址的思路以及使用php生成短网址的实现方法做一下记录. 生成短网址的思路:如果把短网址还原了,你知道是个什么样子的吗?比如: http://www.Alixixi.com/javascript-function/834.html 对于以上这个链接,除了直接打开之外,还有一种方法打开它,如下: http://www.Alixixi.c

资深程序员实例总结分享短网址开发运维经验

每个萝卜下都隐藏一个坑. 前段时间955短网址日重定向次数最高达400万,主要开销是重定向请求的用户数据储存与分析.分别经历了内存瓶颈.IO 瓶颈后,高峰期达到 CPU 上限,几乎榨干了机器,下文是经验总结分享. 前置条件 由于短网址很难盈利,硬件特别寒碜,带着镣铐跳舞反而别有风味,当然,人力投入,技术方面也不能和其他大网站比,所以如果要拍砖请轻下手--哎哟. 我们采用的硬件: 盛大云微型,1G内存,单核共享型 CPU. 后期追加了一个同等配置的内网机器做 MongoDB replSet. St

php 生成短网址原理及代码

 将原网址做crc32校验,得到校验码,使用sprintf将校验码转为无符号数字,详细步骤请看本文 php 生成短网址    原理:    1.将原网址做crc32校验,得到校验码.    2.使用sprintf('%u') 将校验码转为无符号数字.    3.对无符号数字进行求余62操作(大小写字母+数字等于62位),得到余数后映射到62个字符中,将映射后的字符保存.(例如余数是10,则映射的字符是A,0-9对应0-9,10-35对应A-Z,35-62对应a-z)    4.循环操作,直到数值

php生成短网址的原理及代码

原理: 1.将原网址做crc32校验,得到校验码. 2.使用sprintf('%u') 将校验码转为无符号数字. 3.对无符号数字进行求余62操作(大小写字母+数字等于62位),得到余数后映射到62个字符中,将映射后的字符保存.(例如余数是10,则映射的字符是A,0-9对应0-9,10-35对应A-Z,36-61对应a-z) 4.循环操作,直到数值为0. 5.将所有映射后的字符拼接,就是短网址后的code. 代码如下: /** 生成短网址 * @param String $url 原网址 * @

做淘客更踏实利用phurl搭建自己的短网址网站

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 说一下如何搭一个独立的短网址网站,好处,1.安全:避免被随意修改ID,2.稳定:只要你自己不删除,连接一直有效,3.用途广:新浪微博也可以发链接,想发那发那,群发还可以避免网站降权,4.便宜,我看到很多朋友用的都是国外空间,一般都可以搭建多个网站,只需投入一个域名就可以了,或者使用二级域名投入更少(如果使用二级域名第3条无效,不要去做). 之

淘宝客推广利剑:百度短网址

中介交易 http://www.aliyun.com/zixun/aggregation/6858.html">SEO诊断 淘宝客 云主机 技术大厅 百度的网址缩短服务(dwz)可谓是一波三折.Dwz.cn推出以后曾一度关闭相当长一段时间,后来不知又合适低调重新开启服务.短网址一直是淘宝客必备,今天笔者就和大家分享下如何将百度短网址服务作用发挥到极致,真正成为淘宝客推广利剑. 淘宝客推广链接由于过长而且容易被屏蔽所以一直是淘宝客必备.然而百度短网址和其他类似的短网址服务相比,有以下几个得天

两种JAVA实现短网址服务算法_java

短网址(Short URL) ,顾名思义就是看起来很短的网址.自从twitter推出短网址服务以后,各大互联网公司都推出了自己的短网址服务.短网址最大的优点就是短,字符少,便于发布.传播.复制和存储. 通过网上的搜索,感觉流传了2种短网址算法,一种是基于MD5码的,一种是基于自增序列的. 1.基于MD5码 : 这种算法计算的短网址长度一般是5位或者6位,计算过程中可能出现碰撞(概率很小),可表达的url数量为62 的5次方或6次方.感觉google(http://goo.gl),微博用的是类似这