首页 > 解决方案 > Python中的字符串格式化

问题描述

对于给定的文件路径:

source_path = 'User/animal/herbivore/query/{}/'

如果值为 Null 则应格式化如下

'User/animal/herbivore/query/Q1'

如果值是一个数字,它应该是

'User/animal/herbivore/query/1/Q1'

当值为空时如何格式化source_path

标签: pythonpython-3.x

解决方案


source_path = 'User/animal/herbivore/query/'
end_path = 'Q1'
str_value = ''

if str_value:
    if type(str_value) == int or (type(str_value) == str and str_value.isdigit()):
        resulted_path = source_path + str(str_value) + '/' + end_path
        print(resulted_path)
else:
    resulted_path = source_path + end_path
    print(resulted_path)

# output
# case 1 :
# str_value = ''
# resulted_path = 'User/animal/herbivore/query/Q1'

# case 2 :
# str_value = '1'
# resulted_path = 'User/animal/herbivore/query/1/Q1'

# case 3 :
# str_value = 1
# resulted_path = 'User/animal/herbivore/query/1/Q1'

# case 4 :
# str_value = None
# resulted_path = 'User/animal/herbivore/query/Q1'

您可以通过删除不需要的 if 条件来进一步优化代码。如果需要,您还可以添加其他条件逻辑。


推荐阅读