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

WBOY
Freigeben: 2016-06-10 15:14:08
Original
1346 Leute haben es durchsucht

本文实例讲述了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)
Nach dem Login kopieren

希望本文所述对大家的Python程序设计有所帮助。

Verwandte Etiketten:
Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage