我差不多完成了我的程序,但我犯了一个微妙的错误.我的程序应该接受一个字,并且通过一次更改一个字母,最终应该以指定的步数达到目标字.我一直在尝试寻找相似之处,例如:如果找到了这个词,并且目标词丢失了,这就是我的程序将以4个步骤输出的方式:
['find','fine','line','lone','lose]
Run Code Online (Sandbox Code Playgroud)
这实际上是我想要的输出.但是如果你考虑一些更强硬的单词,比如Java和work,那么输出应该是6个步骤.
['java', 'lava', 'lave', 'wave', 'wove', 'wore', 'work']
Run Code Online (Sandbox Code Playgroud)
所以我的错误是我没有意识到你可以通过使用目标词或原始词中不存在的字母来达到目标词.
这是我的原始代码:
import string
def changeling(word,target,steps):
alpha=string.ascii_lowercase
x=word##word and target has been changed to keep the coding readable.
z=target
if steps==0 and word!= target:##if the target can't be reached, return nothing.
return []
if x==z:##if target has been reached.
return [z]
if len(word)!=len(target):##if the word and target word aren't the same length print error.
print "error"
return None
i=1
if lookup
if lookup(z[0]+x[1:]) is True and z[0]+x[1:]!=x :##check every letter …Run Code Online (Sandbox Code Playgroud) 我有一个包含很多名称的数据库(SQL),我想创建按字母顺序排列的按钮,因此很容易导航.我已经找到了很多关于如何在PHP中创建字母表的例子.但是,我想根据数据库中的名称构建一个只有有效字母的字母.
例如:
数据库列表:Anderson,Beresford,Donovan,Emerson,Graham ....
我希望字母表显示为:ABDEG ...
(请注意,C和F不会出现).
我能想到的唯一方法是
- 选择数据库中的每个名字,按顺序排序-loop逐个,查找第一个字符是什么,将其保存到数组,-loop到第二个字符,获取第一个字符,看它是否已存在于数组,如果它确实忽略它 - 直到我留下一个只有重复字母的数组.
这是唯一的方法吗?或者我错过了一个更简单的解决方案?
提前致谢.
我的数据采用以下格式:
data = [['@datumbox', '#machinelearning'],
['@datumbox', '#textanalysis'],
['@things_internet', '#iot'],
['@things_internet', '#h...'],
['@custmrcom', '#analytics123'],
['@custmrcom', '#strategy...123'],
['@custmrcom', '#1knowledgetweet'],
['@tamaradull', '#@bigbrother']]
Run Code Online (Sandbox Code Playgroud)
我想检查hashtag是否包含任何非字母表.如果是,则删除相应的行.
所需的输出是:
data = [['@datumbox', '#machinelearning'],
['@datumbox', '#textanalysis'],
['@things_internet', '#iot']]
Run Code Online (Sandbox Code Playgroud)
我想我需要使用re.sub(例如,re.compile('[^ a-zA-Z]')).这是我到目前为止:
newdata = []
for item in data:
regex = re.compile('[^a-zA-Z]')
if regex.match(item[1]):
newdata.append([item[0], item[1]])
Run Code Online (Sandbox Code Playgroud)
有什么建议吗?
我正在使用测试数据“银行”在mac上研究mysql。我有一个关于 mysql 中字母排序的问题。
我有一个示例代码select cust_id,cust_type_cd,city,state,fed_id from customer order by 2 asc;
返回显示在第 2 列中,“I”在“B”之前。
有谁知道是什么原因?非常感谢。
我在C中编写一个函数,它将获取一个字符串并删除所有不是小写字母字符的字符.我到目前为止编写了这段代码:
void strclean(char* str) {
while (*str) {
if (!(*str >= 'a' && *str <= 'z')) {
strcpy(str, str + 1);
str--;
}
str++;
}
}
Run Code Online (Sandbox Code Playgroud)
当我传递字符串"hello [] [] world"时,该函数似乎主要工作,除了输出是:
hellowoldd
Run Code Online (Sandbox Code Playgroud)
当我在输入if语句的每一行之后打印它时,这是我收到的输出:
hello][]woldd
hello[]woldd
hello]woldd
hellowoldd
Run Code Online (Sandbox Code Playgroud)
它似乎非常接近,但我不明白为什么它会产生这个输出!最奇怪的部分是我已经将代码提供给其他两个朋友,它在他们的计算机上工作正常.我们都运行相同版本的Linux(ubuntu 14.04.3),并且都使用gcc进行编译.
我不确定代码是否存在导致输出不一致的问题,或者是否是导致问题的编译器问题.也许它与我的机器上的strcpy相比,与他们相比?
我有一个近1500行的文件,其中包含")(()(&& ^%&^ a%@%^%*&^"等符号以及整个文件中的一些两个或三个字母.
如何在此类文件中搜索这些字母并在o/p屏幕上显示找到的字母.
那么如何制作多个字母呢?我正在使用带字符串的数组,我希望将它们乘以索引.
A
BB
CCC
DDDD
EEEEE
Run Code Online (Sandbox Code Playgroud)
等等
<script>
window.onload = start;
var letters = ["A", "B", "C", "D", "E", "F", "G", "H", "I", "J", "K", "L", "M", "N",
"O", "P", "Q", "R", "S", "T", "U", "V", "W", "X", "Y", "Z"];
var numbers = [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];
function start() {
document.getElementById("randomize").onclick = execute;
}
function execute() {
for …Run Code Online (Sandbox Code Playgroud) 我想获得一个javascript数字表示的信做,即在伪代码进行像"a'.getNumberRep - "操作一些相关操作b'.getNumberRep.
在js中这样做的最佳方法是什么?
我发现这个例子用于查找给定长度的字母表的所有字符串.
for i in range(length):
result = [str(x)+str(y) for x in alphabet for y in result or ['']]
Run Code Online (Sandbox Code Playgroud)
我试图理解它是如何工作的,如果这是用for循环实现的,它看起来如何 - 我所有的简化它的尝试都变得非常混乱并且无限循环崩溃......而这一次每次都有效.
例:
def allstrings(alphabet, length):
"""Find the list of all strings of 'alphabet' of length 'length'"""
alphabet = list(alphabet)
result = []
for i in range(length):
result = [str(x)+str(y) for x in alphabet for y in result or ['']]
return result
# will return ['aa', 'ab', 'ba', 'bb']
print(allstrings({'a', 'b'}, 2)))
# will return ['000', '001', '010', '011', '100', '101', …Run Code Online (Sandbox Code Playgroud) 我需要将字母转换成数字.A将是01,B将是02 ...... Z将是26.
我的伪代码:
variable = 'C'
if (variable = 'A'){
counter = 01}else if (variable = 'B'){
counter = 02}else if (variable = 'C'){
counter = 03
}elseif...
Run Code Online (Sandbox Code Playgroud)
肯定有另一种方法可以做到这一点.