【问题标题】:How can I make a list of a input string the user has typed into Python?如何列出用户在 Python 中键入的输入字符串?
【发布时间】:2014-10-02 02:47:56
【问题描述】:

我是编程新手,在我的脚本中,我必须创建一个包含用户输入字符串的列表。

我知道切片和制作列表的基本原理,例如:list = []

但我需要编写代码,以便键入的字符串中的每个单词都成为列表中的一个设定数字。

例如:如果用户打印,Hello my name is

在列表中它必须是 hello my, name, is hello is = 1 my = 2 name = 3 is = 4

那么我必须从列表中的每个单词中取出第一个字母???

有人可以帮忙吗???

【问题讨论】:

    标签: python arrays string list numbers


    【解决方案1】:
    In [32]: L = input("Enter a sentence: ").split()
    Enter a sentence: Hello my name is
    
    In [33]: L
    Out[33]: ['Hello', 'my', 'name', 'is']
    
    In [34]: L[0]
    Out[34]: 'Hello'
    
    In [35]: L[1]
    Out[35]: 'my'
    
    In [36]: for i in range(len(L)):
       ....:     print(i, L[i])
       ....:     
    0 Hello
    1 my
    2 name
    3 is
    
    
    In [37]: firsts = [i[0] for i in L]
    
    In [38]: firsts
    Out[38]: ['H', 'm', 'n', 'i']
    

    【讨论】:

    • 是的,我看到你做了一个列表并将其拆分,但我需要取出字符串中每个单词的每个字母?
    【解决方案2】:

    所以我的理解是,你想获取列表中每个单词的第一个字符

    这是快速解决方案。

    >>> x = 'Hello my name is'
    >>> new_list = x.split(' ')
    >>> new_list
    ['Hello', 'my', 'name', 'is']
    >>> [i[0] for i in new_list]
    ['H', 'm', 'n', 'i']
    >>> 
    

    【讨论】:

    • 好的,我知道你在第二行拆分了字符串,然后创建了一个 new_list 变量,但之后我不明白??? whats [i[0] 我看到你为新变量做了一个 for 循环?这就是我到目前为止所拥有的 def acronym(): usrInput = input("请输入你想变成首字母缩写词的内容:",) newInput = usrInput.split() for i in newInput: acronym()
    【解决方案3】:

    如果你需要更多的pythonic风格,基本上和@inspectorg4dget的回答一样

    >>> first_char = [word[0] for word in raw_input("Enter a sentence : ").split()]
    Enter a sentence : Hello my name is
    >>> first_char
    ['H', 'm', 'n', 'i']
    >>>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 2018-01-10
      • 2013-08-06
      • 2013-05-14
      • 1970-01-01
      • 2014-12-30
      • 2014-03-05
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多