Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/312.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
我在基本Python语法方面遇到了问题_Python - Fatal编程技术网

我在基本Python语法方面遇到了问题

我在基本Python语法方面遇到了问题,python,Python,我只是一般地学习Python和编码,我认为这是一个非常棘手的问题 def get_age_difference(first, second): text = 'The age difference is ' number = abs(int('%04d' % (first)) - int('%04d' % (second))) return text, number print(get_age_difference(2001, 2018)) 我明白了 (“年龄差异是”

我只是一般地学习Python和编码,我认为这是一个非常棘手的问题

def get_age_difference(first, second):
    text = 'The age difference is '
    number = abs(int('%04d' % (first)) - int('%04d' % (second)))
    return text, number

print(get_age_difference(2001, 2018))
我明白了
(“年龄差异是”,17岁)

我想去
年龄差为17


我做错了什么?

您应该使用格式化字符串

def get_age_difference(first, second):
    num = abs(int('%04d' % (first)) - int('%04d' % (second)))
    result = f'The age difference is {num}'
    
    return result

print(get_age_difference(2001, 2018))

您应该使用格式化字符串

def get_age_difference(first, second):
    num = abs(int('%04d' % (first)) - int('%04d' % (second)))
    result = f'The age difference is {num}'
    
    return result

print(get_age_difference(2001, 2018))

您返回的两个数字将打印为
元组
。而是以这种方式连接字符串

def get_age_difference(first, second):
    text = 'The age difference is '
    number = str(abs(int('%04d' % (first)) - int('%04d' % (second))))
    return text+ number

print(get_age_difference(2001, 2018))

这将打印所需的输出

您返回的两个数字将打印为
元组
。而是以这种方式连接字符串

def get_age_difference(first, second):
    text = 'The age difference is '
    number = str(abs(int('%04d' % (first)) - int('%04d' % (second))))
    return text+ number

print(get_age_difference(2001, 2018))

这将打印所需的输出

您可以执行以下操作

def get_age_difference(first, second):
   number = abs(int('%04d' % (first)) - int('%04d' % (second)))
   result = 'The age difference is {}'.format(number)
   return result

你可以这样做

def get_age_difference(first, second):
   number = abs(int('%04d' % (first)) - int('%04d' % (second)))
   result = 'The age difference is {}'.format(number)
   return result
使用f字符串:

def get_age_difference(first, second):
    num = abs(int('%04d' % (first)) - int('%04d' % (second)))
    result = f'The age difference is {num}'
    return result
print(get_age_difference(2001, 2018))
或者只是使用+

def get_age_difference(first, second):
    text = 'The age difference is '
    number = str(abs(int('%04d' % (first)) - int('%04d' % (second))))
    return text + number

print(get_age_difference(2001, 2018))
使用f字符串:

def get_age_difference(first, second):
    num = abs(int('%04d' % (first)) - int('%04d' % (second)))
    result = f'The age difference is {num}'
    return result
print(get_age_difference(2001, 2018))
或者只是使用+

def get_age_difference(first, second):
    text = 'The age difference is '
    number = str(abs(int('%04d' % (first)) - int('%04d' % (second))))
    return text + number

print(get_age_difference(2001, 2018))
你可以试试这样的方法


您可以尝试以下方法。

返回一个包含两个值的元组。可以使用元组解包将这些值中的每一个分配给单独的变量。注意,我已经删除了文本中的尾随空格-间距应该由进行diplay的内容决定

def get_age_difference(first, second):
    text = 'The age difference is'
    number = abs(int('%04d' % (first)) - int('%04d' % (second)))
    return text, number

description, difference = get_age_difference(2001, 2018)
现在你有选择了。下面是使用f字符串和其他参数打印的示例

print(f"{description} {difference}")
print(description, difference)
print(*get_age_difference(2001, 2018))
或者,您可以将一个iterable(如元组)扩展为一个函数。您的两个值可能成为要打印的参数

print(f"{description} {difference}")
print(description, difference)
print(*get_age_difference(2001, 2018))

返回一个包含两个值的元组。可以使用元组解包将这些值中的每一个分配给单独的变量。注意,我已经删除了文本中的尾随空格-间距应该由进行diplay的内容决定

def get_age_difference(first, second):
    text = 'The age difference is'
    number = abs(int('%04d' % (first)) - int('%04d' % (second)))
    return text, number

description, difference = get_age_difference(2001, 2018)
现在你有选择了。下面是使用f字符串和其他参数打印的示例

print(f"{description} {difference}")
print(description, difference)
print(*get_age_difference(2001, 2018))
或者,您可以将一个iterable(如元组)扩展为一个函数。您的两个值可能成为要打印的参数

print(f"{description} {difference}")
print(description, difference)
print(*get_age_difference(2001, 2018))

您可以包括
text\u number=text+str(number)
,然后
return text\u number
,使用当前代码返回两个单独的变量,但您的目标是返回一个字符串,因此,您必须包含将两个独立变量转换为一个组合字符串的变量的代码,而不是两个独立变量。为什么不使用
abs()
将这两个变量相减,然后在其上使用
str()
。返回值是元组而不是字符串
returntext+str(abs(first second))
一个名为
get\u age\u difference
的函数应该只返回差异。调用者应添加文本注释。只需从函数返回数值结果,然后在打印语句中格式化并添加注释。您可以包括
text\u number=text+str(number)
,然后
return text\u number
,您将使用当前代码返回两个单独的变量,但您的目标是返回字符串,因此,您必须包含将两个独立变量转换为一个组合字符串的变量的代码,而不是两个独立变量。为什么不使用
abs()
将这两个变量相减,然后在其上使用
str()
。返回值是元组而不是字符串
returntext+str(abs(first second))
一个名为
get\u age\u difference
的函数应该只返回差异。调用者应添加文本注释。只需从函数返回数值结果,然后在print语句中格式化并添加注释。python中的格式化字符串有助于使用字符串中的变量。正如您在我的回答中所看到的,我能够在python中的字符串“result”格式的字符串中插入“num”值,这有助于使用字符串中的变量。正如您在我的回答中所看到的,我能够在字符串“result”中插入“num”的值