包含字典键长度的字符串长度

length of string to include the length of a dict key

如何获取字符串的长度以包含表示字典中键的变量的长度?

代码

def string_length(mystring):
    """ I am the doc string for this function"""
    length_of_string = len(mystring)
    print("mystring :   ",mystring)
    print("length of string : ", length_of_string)
    print('\n'*2)
    return length_of_string


def heading_from_string(mystring, symbol_string):
    los = string_length(mystring)
    print(symbol_string * los, '\n', mystring, '\n', symbol_string * los, sep = '')



a = {"imagefile1":2, "Image_file_2":3}


for k,v in a.items():
    print('\n'*2)
    mystring = ("testing_testing :", k)
    heading_from_string(mystring, "&")

Return

mystring :    ('testing_testing :', 'imagefile1')
length of string :  2



&&
('testing_testing :', 'imagefile1')
&&



mystring :    ('testing_testing :', 'Image_file_2')
length of string :  2



&&
('testing_testing :', 'Image_file_2')
&&

预期输出 符号的数量应与母版中文本的长度和字典键 k 中的长度相同 例如

&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&
testing_testing :', 'imagefile1'
&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&&

您正在使用此行创建长度为 2 的 tuple

mystring = ("testing_testing :", k)

应该是:

mystring = "testing_testing :" + k

您传递的是元组,而不是字符串。一个简单的解决方案是将其转换为字符串,这就是您想要的:

 heading_from_string(str(mystring), "&")

或正确设置字符串:

 mystring = f"testing_testing : {k}"