Python3中是否有一个标记报告是否不需要强制转换

Python3中是否有一个标记报告是否不需要强制转换,python,python-3.x,unicode,Python,Python 3.x,Unicode,我正在将一个相当大的Python项目从Python2.7转换为Python3.x。我必须更改函数的输出类型。过去,在使用返回值时,我可能会强制转换为str()或unicode()。在某些情况下,我可能不再需要强制转换返回值。是否有一个标记可以打印出类似“str()在x行上不必要的强制转换”之类的内容 希望这样一个标志可以用于所有不必要的强制转换。否。没有这样的标志。出于调试目的,您可以覆盖str和unicode函数,首先检查输入的类型,如果输入已经是str或unicode,则打印调试语句。这听起

我正在将一个相当大的Python项目从Python2.7转换为Python3.x。我必须更改函数的输出类型。过去,在使用返回值时,我可能会强制转换为str()或unicode()。在某些情况下,我可能不再需要强制转换返回值。是否有一个标记可以打印出类似“str()在x行上不必要的强制转换”之类的内容


希望这样一个标志可以用于所有不必要的强制转换。

否。没有这样的标志。出于调试目的,您可以覆盖
str
unicode
函数,首先检查输入的类型,如果输入已经是
str
unicode
,则打印调试语句。这听起来像是的应用程序,但除非已经为其编写了代码,否则这将是一个巨大的重新编写过程!有相当多的标志,如--b和-3,可以帮助转换为Python 3,但它们不包括这种情况。而且,我希望得到帮助的不仅仅是琴弦,还有任何不必要的演员阵容。也许一些Python程序员会接受这个,我认为搜索这样的字符串是最好的方法。另一方面,对于这样的构造函数(非强制转换),代码检查类型,如果类型已经是字符串,则什么也不做,因此您不会得到太多的性能惩罚。通常在旧代码上,有许多更好的方法来提高性能。