【问题标题】:Print returns 'None' [duplicate]打印返回“无”[重复]
【发布时间】:2021-02-04 02:06:55
【问题描述】:

我是编程新手,必须开发一个简单的脚本,将单词转换为北约语言。我已经(通过谷歌)想出了如何将这个词转换为北约,但它也返回“无”?为什么会这样?

def textToNato(plainText):
    
    d =  {
        'A': 'Alpha',  'B': 'Bravo',   'C': 'Charlie',
        'D': 'Delta',  'E': 'Echo',    'F': 'Foxtrot',
        'G': 'Golf',   'H': 'Hotel',   'I': 'India',
        'J': 'Juliett','K': 'Kilo',    'L': 'Lima',
        'M': 'Mike',   'N': 'November','O': 'Oscar',
        'P': 'Papa',   'Q': 'Quebec',  'R': 'Romeo',
        'S': 'Sierra', 'T': 'Tango',   'U': 'Uniform',
        'V': 'Victor', 'W': 'Whiskey', 'X': 'X-ray',
        'Y': 'Yankee', 'Z': 'Zulu'}
    natoText = print('-'.join([d[x] for x in [*plainText.upper()]]))
    return natoText

【问题讨论】:

  • 仅供参考,它不是一种语言。它只是拼写/拼音字母(NATO 拼音字母或 ICAO 拼音字母)。
  • 不要print函数内部的结果,之后再做:print(textToNato('OMGWTFLOL'))。 (一般来说,将数据处理与输入和输出分开是一个好主意。)

标签: python


【解决方案1】:

natoText = print(...) 打印返回无,这就是问题背后的原因。你应该做的是

natoText = '-'.join([d[x] for x in plainText.upper()])
print (natoText) #if you need to print here
return natoText

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-09
    • 2018-05-11
    • 2017-01-05
    • 2017-05-03
    • 1970-01-01
    相关资源
    最近更新 更多