Python函数不返回任何值

Python函数不返回任何值,python,python-3.x,Python,Python 3.x,我无法理解为什么下面两个打印语句给出了不同的结果 结果。谁能给我解释一下吗?我只是举一个小例子。在第一个print语句中,表被一个特殊字符替换,第二个字符给出正确的字符 import re def tblcnv( str ): rtval = re.sub("table", "chair", str) return rtval rval = "<table is in the place where you sit daily " tblcnt =

我无法理解为什么下面两个打印语句给出了不同的结果 结果。谁能给我解释一下吗?我只是举一个小例子。在第一个print语句中,表被一个特殊字符替换,第二个字符给出正确的字符

import re  

def tblcnv( str ):  
    rtval = re.sub("table", "chair", str)  
    return rtval  

rval = "<table is in the place where you sit daily "  
tblcnt = re.sub(r"<(table.*place)", tblcnv('\1'), rval)  

print tblcnt  
print tblcnv("<table is in the place where you sit daily")
重新导入
def tblcnv(str):
rtval=re.sub(“桌子”,“椅子”,str)
返回rtval
rval=“此行:

tblcnt = re.sub(r"<(table.*place)", tblcnv('\1'), rval)
tblcnt=re.sub(r“此行:

tblcnt = re.sub(r"<(table.*place)", tblcnv('\1'), rval)

tblcnt=re.sub(r”定义tblcnt时,您传递的是tblcnv('\1')。\1'是包含一个值为0x01的字节的字符串。因此,tblcnv的结果是相同的字符串。

定义tblcnt时,您传递的是tblcnv('\1')“\1”是包含一个值为0x01的单字节的字符串。因此,tblcnv的结果是相同的字符串。

根据手册,它使用一个函数,该函数“对于模式的每个非重叠出现都被调用”“。由于这些引用实际上是匹配对象,因此最好使用一个简单的lambda表达式,该表达式提取匹配对象的
组(1)
,并将其传递给
tblcnv
函数

import re

def tblcnv( str ):  
    rtval = re.sub("table", "chair", str)  
    return rtval  

rval = "<table is in the place where you sit daily "  
tblcnt = re.sub(r"<(table.*place)", lambda m: tblcnv(m.group(1)), rval)  

print tblcnt  
print tblcnv("<table is in the place where you sit daily")
重新导入
def tblcnv(str):
rtval=re.sub(“桌子”,“椅子”,str)
返回rtval
rval=“根据手册,它需要一个函数,该函数“对于模式的每个非重叠出现都被调用”。由于这些出现实际上是匹配对象,因此最好使用一个简单的lambda表达式,该表达式提取匹配对象的
组(1)
,并将其传递给
tblcnv
函数

import re

def tblcnv( str ):  
    rtval = re.sub("table", "chair", str)  
    return rtval  

rval = "<table is in the place where you sit daily "  
tblcnt = re.sub(r"<(table.*place)", lambda m: tblcnv(m.group(1)), rval)  

print tblcnt  
print tblcnv("<table is in the place where you sit daily")
重新导入
def tblcnv(str):
rtval=re.sub(“桌子”,“椅子”,str)
返回rtval

rval=“您能添加您看到的输出吗?@thegriner D:\Python>tbl.py☺ 你每天坐在哪里,评论会抑制换行符-如果你编辑你的帖子,它会更清晰。
D:\Python>tbl.py
☺ 你每天坐在哪里
你能添加你看到的输出吗?@thegrinner D:\Python>tbl.py☺ 你每天坐在哪里,评论会抑制换行符-如果你编辑你的帖子,它会更清晰。
D:\Python>tbl.py
☺ 《你每天坐的地方》
它很有魅力。非常感谢你的宝贵解释。你介意接受这个答案吗?我很想看到这个绿色的记号。谢谢你,并尽全力学习一种叫做python的很棒的编程语言!它很有魅力。非常感谢你的宝贵解释。你介意吗接受这个答案吗?我希望看到这个绿色的勾号。谢谢大家,并祝大家学习python这种很棒的编程语言!您可能需要
'\\1'
r'\1'
。您可能需要
'\\1'
r'\1'