输入可以达到(但不总是)20到1-99之间的值,由'或'需要与字符串相关联。用户输入将提供值和"标签"应该在打印到文本文件输出中替换该值。我也可以询问用户他们提供的值的数量。
例如: 用户输入:
1或2或10或60
数量输入:
4
标签输入:
今天,两天,一个月,一年
澄清:输入值在数学上与标签字符串本身不对应,并且是抽象的。
{' 1':'今天', ' 2':'两天', ' 10':'一个月', ' 60':'一年'}
如何说明用户提供的密钥和未知数量的对?
答案 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"
和逗号:","
。