程序应该接受两个名称,如果它们的长度相同,它应该检查它们是否是相同的单词。如果是同一个单词,它将打印“名称相同”。如果它们长度相同但字母不同,则会打印“名称不同但长度相同”。我遇到问题的部分在最后4行。
#!/usr/bin/env python
# Enter your code for "What's In (The Length Of) A Name?" here.
name1 = input("Enter name 1: ")
name2 = input("Enter name 2: ")
len(name1)
len(name2)
if len(name1) == len(name2):
if name1 == name2:
print ("The names are the same")
else:
print ("The names are different, but are the same length")
if len(name1) > len(name2):
print ("'{0}' is longer than '{1}'"% name1, name2)
elif len(name1) < len(name2):
print ("'{0}'is longer than '{1}'"% name2, name1)
运行此代码时,它会显示:
Traceback (most recent call last):
File "program.py", line 13, in <module>
print ("'{0}' is longer than '{1}'"% name1, name2)
TypeError: not all arguments converted during string formatting
非常感谢您的任何建议。
对我来说,这个错误是在我试图将元组传递到字符串格式方法时引起的。
我从这个问题/答案中找到了解决办法
复制并粘贴链接中的正确答案(不是我的作品):
>>> thetuple = (1, 2, 3)
>>> print "this is a tuple: %s" % (thetuple,)
this is a tuple: (1, 2, 3)
将感兴趣的元组作为唯一项,即(元组)部分,创建一个单元组是这里的关键点。
字符串格式错误。
使用'%'运算符使用传统字符串格式的正确方法是使用printf样式的格式字符串(Python为此留档:http://docs.python.org/2/library/string.html#format-string-syntax):
"'%s' is longer than '%s'" % (name1, name2)
但是,将来可能会弃用“%”运算符。新的政治公众人物3101做事方式如下:
"'{0}' is longer than '{1}'".format(name1, name2)
您正在混合不同的格式函数。
旧式格式使用代码进行格式化:
'It will cost $%d dollars.' % 95
新样式的{}
格式使用{}
代码和. form
方法
'It will cost ${0} dollars.'.format(95)
请注意,对于旧式格式,必须使用元组指定多个参数:
'%d days and %d nights' % (40, 40)
在您的情况下,因为您使用的是格式说明符,所以请使用。格式:
"'{0}' is longer than '{1}'".format(name1, name2)
问题内容: 我通过psycopg2有一个简单的数据库查询,但是我不知道为什么它总是在这里显示错误 然后它将显示 TypeError:并非在字符串格式化期间转换了所有参数 如果我以这种方式尝试 它仍然无法正常工作 我如何以正确的方式将参数传递给psycopg2。请帮助我! 问题答案: 您传递给的sql参数必须位于一个元组或列表中,即使只有一个。在文档中对此进行了说明: 对于位置变量绑定,即使第二个参
问题内容: 这是输出。我相信这些是utf-8字符串…其中一些可以是NoneType,但在类似这样的字符串之前会立即失败… TypeError:格式字符串的参数不足 虽然是7比7? 问题答案: 请注意,格式化字符串的语法已过时。如果您的Python版本支持它,则应编写: 这也可以修复您碰巧遇到的错误。
我在一个名为train的数据帧中有一个类型为string(object)的列I_DATE,如下所示。 如何将I_日期从字符串转换为数据时间格式 另外,如何根据熊猫中的日期范围筛选行?
问题内容: 我正在尝试将字符串“ 20091229050936”转换为“ 2009年12月29日(UTC)05:09” 给 显然,我犯了一个错误:时间是错误的,它是日期时间对象!它有一个日期 和 一个时间部分! 给 我如何将字符串转换为格式化的日期字符串? 问题答案: 返回一个; 接受作为可选参数: 给
问题内容: 我想要这种格式 问题答案: 您需要先 解析 日期字符串(使用方法),才能 使用与格式匹配的格式获取对象。 然后使用所需的格式来 格式化 Date对象(Use 方法)以获取字符串。 输出:- 第一种格式是RFC 822 TimeZone与您的日期字符串匹配。有关在日期格式中使用的其他各种选项,请参见。
问题内容: 我有包含日期字符串的数据。 通常情况下,它会出现在“ Jan”中。1966年第3版的字型格式,但由于国际上的差异,不一定总是那样。 我需要读取数据并将其转换为标准日期字符串(’YYYY-MM-DD’)。 基本上这就是我到目前为止所拥有的: 问题答案: Xcode 9•Swift 4 或 Xcode 8.3.2•Swift 3.1 您可以按以下方式使用NSDataDetector: