草庐IT

python - 一个字母游戏问题?

最近在一次工作面试中,我遇到了以下问题:编写一个能像python一样在命令行运行的脚本它应该在命令行上输入两个词(或者如果您愿意,它可以选择通过控制台询问用户以提供这两个词​​)。鉴于这两个词:一个。确保它们的长度相等b.确保它们都是英语有效单词词典中的单词你下载的。如果是这样,请计算您是否可以通过以下一系列步骤从第一个单词到达第二个单词一个。您一次可以更改一个字母b.每次你改变一个字母,得到的单词也必须存在于字典中C。您不能添加或删除字母如果这两个词是可达的,脚本应该打印出从一个词到另一个词的一条最短路径。你可以/usr/share/dict/words作为你的字典。我的解决方案包括

Python - 按字母顺序排列单词

程序必须打印按字母顺序排在8个元素中最后一个的名称。可以通过代码以任何方式输入名称/单词。我想我应该在这里使用列表和inrange()。我有一个想法,将输入名称的第一个/第二个/第三个/...字母与前一个字母的字母进行比较,然后将其放在列表的末尾或前一个字母的前面(取决于比较),然后重复下一个名字。最后,程序将打印列表的最后一个成员。 最佳答案 Python的字符串比较默认是词法的,因此您应该能够调用max并摆脱它:In[15]:sentenceOut[15]:['this','is','a','sentence']In[16]:m

python - 通过两个列表循环打印以获得两列,每个列表的每个元素的第一个字母之间有固定(自定义设置)的空间

假设我有这两个列表:column1=["soft","pregnant","tall"]column2=["skin","woman","man"]如何在使用自定义的固定空间(例如10,如示例)时循环打印这两个列表,从第一个列表的每个元素的第一个字母开始到第二个列表的每个元素的第一个字母名单?设置间距为10的示例输出:softskinpregnantwomantallman 最佳答案 使用stringformatting轻松完成,column1=["soft","pregnant","tall"]column2=["skin","w

python - 如何在消除重复项的同时按出现频率和字母顺序(在平局的情况下)组织列表?

基本上如果给定一个列表:data=["apple","pear","cherry","apple","pear","apple","banana"]我正在尝试创建一个返回如下列表的函数:["apple","pear","banana","cherry"]我正在尝试使返回列表按最常出现的单词优先排序,同时通过按字母顺序对它们进行排序来打破平局。我也在尝试消除重复项。我已经列出了数据中每个元素的计数和每个元素的索引。x=[n.count()fornindata]z=[n.index()fornindata]我不知道从这一点到哪里去。 最佳答案

python - 按字母/字典顺序计算两个字符串的平均值

假设您使用字符串'a'和'z'并按字母顺序列出它们之间的所有字符串:['a','b','c'...'x','y','z']。取此列表的中点,您会找到“m”。所以这有点像取这两个字符串的平均值。您可以将其扩展到包含多个字符的字符串,例如,可以在列表['aa','ab','ac'...'zx','zy','zz'].某处是否有Python方法可以执行此操作?如果不知道,即使知道算法的名称也会有所帮助。我开始制作我自己的例程,它简单地遍历两个字符串并找到第一个不同字母的中点,这在'aa'和'az'中点是'am'的情况下似乎很有效,但后来它在它认为是“c”的“cat”、“doggie”中点上失

python - 按顺序生成字母数字字符串

我正在尝试创建一个循环来生成和打印字符串,如下所示:仅限字母数字字符:0-9在A-Z之前,它们在a-z之前,长度最多为4个字符。所以,它会打印:0-z的所有字符串然后从00-zz然后从000-zzz然后从0000-zzzz开始然后它停止了。 最佳答案 fromstringimportdigits,ascii_uppercase,ascii_lowercasefromitertoolsimportproductchars=digits+ascii_uppercase+ascii_lowercaseforninrange(1,4+1):

python - 如何简洁地创建一个以字母为键的字典?

我创建了一个包含26个字母的字典,如下所示:aDict={"a":1,"b":2,"c":3,"d":4,etc...}我正在努力改进我的代码,我的问题是,有没有更短的方法可以在不输入所有这些数字的情况下做到这一点? 最佳答案 您可以使用string.ascii_lowercase和听写理解。In[4]:fromstringimportascii_lowercaseasal对于Python2.7+:In[5]:dic={x:ifori,xinenumerate(al,1)}对于Python2.6或更早版本:In[7]:dic=dic

python - 如何在 python 3 中创建包含所有字母 (a-z) 的 txt 频率计数器

我有一个名为textf的文本文件,如下所示:rxgmgcwbdcqcyurrbkxgmq,lwrggrrurrwxtamrwgzwtamquyamcvavrrgdwkxgcr.iwxbdamczxdalgujqarcramavvcmfwgmgum.yw'g我想对文本文件中的每个字母进行频率计数,但我希望它的条件是如果一个字母没有出现在文本中,它应该有一个值为0的键:值对。例如,如果z不在文本中它应该看起来像'z':0等等所有字母(a到z)。我做了以下代码:importstringfromcollectionsimportCounterwithopen("textf.txt")astf:

python - if/else 语句在 python 中接受大写和小写字母的字符串

有没有一种快速的方法让“if”语句接受一个字符串,而不管它在python中是小写、大写还是两者兼而有之?我正在尝试编写一段代码,其中可以输入数字“3”以及单词“three”或“Three”或任何其他大写和小写的混合,它仍然会被接受通过代码中的“if”语句。我知道我可以使用“或”让它接受“3”以及任何其他字符串但是不知道如何让它在不止一种情况下接受字符串。到目前为止,我有:if(Class=="3"orClass=="three"):f=open("class3.txt","a+") 最佳答案 您可以将in运算符与list一起使用。i

python - 只保留字符串中的字母字符(多语言)

在stackoverflow上有很多关于如何只保留字符串中的字母字符的答案,最常见的答案是著名的正则表达式'[^a-zA-Z]'。但是这个答案是完全错误的,因为它假设每个人都只写英文......我以为我可以否决所有这些答案,但我最终认为再次提出这个问题会更有建设性,因为我找不到答案。在python中是否有一种简单(或不......)的方法来只保留适用于所有语言的字符串中的字母字符?我想也许有一个图书馆可以像xregexp那样做在javascript中...所有语言我指的是英语,还有法语、俄语、中文、希腊语...等 最佳答案 [^\W