Python允许从给定base的字符串中轻松创建整数
int(str, base).
Run Code Online (Sandbox Code Playgroud)
我想执行逆向:从整数创建一个字符串,即我想要一些函数int2base(num, base),这样:
int(int2base(x, b), b) == x
Run Code Online (Sandbox Code Playgroud)
函数名称/参数顺序并不重要.
对于任何数量x和底座b是int()会接受的.
这是一个很容易编写的函数:实际上它比在这个问题中描述它更容易.但是,我觉得我必须遗漏一些东西.
我知道的功能bin,oct,hex,但我不能使用他们的几个原因:
这些函数在旧版本的Python上不可用,我需要与它兼容(2.2)
我想要一个通用的解决方案,可以用不同的基础调用相同的方法
我想允许2,8,16以外的碱基
所以我有一个字符串'1xxx1',我想用一个字符替换一个特定数字(也许全部可能没有)的x,让我们说'5'.我想要所有可能的组合(...可能是排列)的字符串,其中x被替换或保留为x.我希望这些结果存储在列表中.
所以期望的结果是
>>> myList = GenerateCombinations('1xxx1', '5')
>>> print myList
['1xxx1','15xx1','155x1','15551','1x5x1','1x551','1xx51']
Run Code Online (Sandbox Code Playgroud)
显然,我希望能够处理任意长度的字符串以及任何数量的x,以及能够替换任何数字.我已经尝试使用循环和递归来解决这个问题无济于事.任何帮助,将不胜感激.