用户输入密钥

时间:2017-07-31 19:11:23

标签: python dictionary raw-input

输入可以达到(但不总是)20到1-99之间的值,由'或'需要与字符串相关联。用户输入将提供值和"标签"应该在打印到文本文件输出中替换该值。我也可以询问用户他们提供的值的数量。

例如: 用户输入:

  

1或2或10或60

数量输入:

  

4

标签输入:

  

今天,两天,一个月,一年

澄清:输入值在数学上与标签字符串本身不对应,并且是抽象的。

  

{' 1':'今天',    ' 2':'两天',    ' 10':'一个月',    ' 60':'一年'}

如何说明用户提供的密钥和未知数量的对?

1 个答案:

答案 0 :(得分:1)

只要你总是知道这些配对会对齐,你就不必担心它们有多少。简单的拆分,(我只是map str.strip进行清理......)然后zip,然后传递给dict类型构造函数:

>>> in_1 = "1 or 2 or 10 or 60"
>>> in_2 = "Today, Two Days, One Month, One Year"
>>> dict(zip(map(str.strip, in_1.split('or')), map(str.strip, in_2.split(','))))
{'1': 'Today', '2': 'Two Days', '60': 'One Year', '10': 'One Month'}

这假设您的输入是"表现良好",因此,您可以可靠地拆分"or"和逗号:","