我的任务是推出一个将Cesar密码解密的程序,我正在查看之前在本网站上提出的其他问题,并且主要了解它。但是,我只是有一个非常基本的问题,如何获得字符串中每个字母的计数。
这是我到目前为止所得到的:
Input=input("input the text you want to decipher:")
import string
print(string.ascii_uppercase)
def get_char(ch,shift):
#get a tally of the each letter
common_letter=#letter with most "tallies"
return common_letter
print(common_letter)
#finding the shift
def get_shift(s,ignore):
for x in Input:
shift=get_char-x
if shift=='e':
return x
print(x)
def output_plaintext(s,shift):
#convert back to English based off shift
pass
def main():
# main body where i call together my other functions
pass
input("is this decrypted?")
#if no is inputted re run program with second most common letter
如何计算字符串中每个字母的数量?
-Nathan
答案 0 :(得分:3)
这可能会对您有所帮助: -
from collections import Counter
input='Nathannn'
print Counter(input)
输出: -
Counter({'n': 3, 'a': 2, 'h': 1, 't': 1, 'N': 1})
如果您要忽略案例使用input.lower()
,然后应用Counter(input)
答案 1 :(得分:2)
这是另一种方法,如果您不能使用导入的模块,例如string userName = System.Security.Principal.WindowsIdentity.GetCurrent().Name;
if (lbUsername.Text.Contains(userName))
{
lbUsername.Text = "klik op de knop, dokus.";
}
else
{
lbUsername.Text = "Username: Hallo," + userName;
}
:
collections
答案 2 :(得分:1)
您可以使用以下代码获取字符串中的最后一个字符:
string[len(string)-1]