python从文件读取时,撇号将单引号更改为双引号

python从文件读取时,撇号将单引号更改为双引号,python,Python,我有一个Python程序,它从从Internet复制的文件中读取文本,并将其存储在变量中以供进一步使用。它非常简单,如下所示: Line=(Storefile.readline()) Word=Line[:-1] ([:-1]删除回车符('\n')) 如果我在空闲状态下写单词,它会返回“面包” 所有这些都很好,直到阅读行中有一个撇号为止。在这种情况下,用IDLE写下单词就可以得到“面包”面包对面包-单引号对双引号 如果我在逐字符的基础上编写Word变量: for n in range(len(

我有一个Python程序,它从从Internet复制的文件中读取文本,并将其存储在变量中以供进一步使用。它非常简单,如下所示:

Line=(Storefile.readline())
Word=Line[:-1]
([:-1]删除回车符('\n'))

如果我在空闲状态下写单词,它会返回“面包”

所有这些都很好,直到阅读行中有一个撇号为止。在这种情况下,用IDLE写下单词就可以得到“面包”面包对面包-单引号对双引号

如果我在逐字符的基础上编写Word变量:

for n in range(len(Word)):
Word=Word+Word[n]
当单词[n]是撇号时-单引号变成双引号。 “面包”对“面包”

问题是-我如何将双引号转换为单引号? replace()不起作用,因为引号不是字符串的一部分-我不知所措

从中,Python字符串可以是单引号或双引号,这没有什么区别。字符串只是作为对象存储的一系列字符,当您尝试显示它时,您的空闲用户会选择用单引号括起来显示它们。弦,在内部和哲学层面上,是相同的

通常惯例是,如果字符串本身包含双引号(反之亦然),则使用单引号,这样就不必反斜杠转义。例如`

s1 = 'His "name" was Harambe' 
s2 = "He's no longer with us"
写起来比写起来容易

s1 = "His \"name\" was Harambe" 
s2 ='He\'s no longer with us'
从中可以看出,Python字符串可以是单引号或双引号,这没有什么区别。字符串只是作为对象存储的一系列字符,当您尝试显示它时,您的空闲用户会选择用单引号括起来显示它们。弦,在内部和哲学层面上,是相同的

通常惯例是,如果字符串本身包含双引号(反之亦然),则使用单引号,这样就不必反斜杠转义。例如`

s1 = 'His "name" was Harambe' 
s2 = "He's no longer with us"
写起来比写起来容易

s1 = "His \"name\" was Harambe" 
s2 ='He\'s no longer with us'

这只是一个显示问题,与字符串本身无关。单引号和双引号字符串只是字符串。@L3viathan是正确的。IDLE提供引号只是为了向人类显示这是一个字符串值。它使用单引号,除非字符串中有单引号。在这种情况下,为了清晰起见,它会切换到双倍。single或double都是字符串值的有效表示形式。可以尝试一个有趣的实验:用单引号和双引号将其输入,例如他说,“我喜欢面包的稠度”——但我不相信他。可能的重复只是一个显示问题,和字符串本身无关。单引号和双引号字符串只是字符串。@L3viathan是正确的。IDLE提供引号只是为了向人类显示这是一个字符串值。它使用单引号,除非字符串中有单引号。在这种情况下,为了清晰起见,它会切换到双倍。single或double都是字符串值的有效表示形式。尝试一个有趣的实验:用单引号和双引号将其输入,例如他说,“我喜欢面包的稠度”——但我不相信他。可能是重复的,谢谢大家的答案!我将一个单独的列表变量(list[n])与列表变量矩阵[n][1]进行比较。单独的List变量添加了方括号,而List列表没有添加方括号,所以当我将这些变量与IF语句进行比较时,结果为False,即使变量中有相同的字符串。所以我认为这是因为引用,但现在我看到这是因为括号。我想这个问题可以删除-Stackoverflow.com真是太棒了@无需删除该问题;这可能对将来的人有所帮助:)谢谢大家的回答!我将一个单独的列表变量(list[n])与列表变量矩阵[n][1]进行比较。单独的List变量添加了方括号,而List列表没有添加方括号,所以当我将这些变量与IF语句进行比较时,结果为False,即使变量中有相同的字符串。所以我认为这是因为引用,但现在我看到这是因为括号。我想这个问题可以删除-Stackoverflow.com真是太棒了@无需删除该问题;它可能会在将来帮助某人:)