将列表格式格式化为字符串(与ArcPy的按属性选择功能兼容的字符串格式)

时间:2019-12-17 19:47:25

标签: python arcpy

我需要将列表格式化为字符串,以便将字符串传递到ArcPy的按属性选择功能中。

我的列表如下-

values = [30477, 35136, 4327]

我想将列表格式化为字符串并将格式化后的字符串存储在变量中。 ArcPy的“按属性选择”功能所需的字符串格式如下所示:

values_string = "OBJECTID = 30477 Or OBJECTID = 35136 Or OBJECTID = 4327"

2 个答案:

答案 0 :(得分:0)

values_string = f"OBJECTID = {values[0]} Or OBJECTID = {values[1]} Or OBJECTID = {values[2]}"

答案 1 :(得分:0)

这可能是在Python中使用f字符串的一个很好的示例。 (适用于python 3.6及更高版本)

def string_cleaner(values_list):
    single_string = ''
    for value in values_list:
        single_string += 'OBJECTID = {} Or '.format(value)
    return single_string[:-4]

您可以传递多个变量参数

single_string += '{} = {} Or '.format('OBJECTID' ,value)

要使其更具可读性,您可以在大括号内传递变量名

single_string += 'OBJECTID = {obj_id} Or '.format(obj_id=value)