Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/list/4.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_List_Character_String Length - Fatal编程技术网

Python 如何计算可能包含列表和字符串的变量中的字符数

Python 如何计算可能包含列表和字符串的变量中的字符数,python,list,character,string-length,Python,List,Character,String Length,我需要在脚本运行期间打印一个标题,例如“Test#”,k,voltage _list,其中k可以是字符串,voltage list类似于[2.45,2.51]。我想要一个完整的计数,当它被打印到控制台时,行中有多少个字符(包括空格、括号和小数点) 我可以计算单个字符串字符,可以将列表内容转换为字符串并组合它们,也可以直接将它们连接成字符串 如果我需要打印的行(“Test#”,k,voltage _list)的计算结果是Test#seven[2.45,2.51],我不知道如何计算括号和小数点以及列

我需要在脚本运行期间打印一个标题,例如“Test#”,k,voltage _list,其中k可以是字符串,voltage list类似于[2.45,2.51]。我想要一个完整的计数,当它被打印到控制台时,行中有多少个字符(包括空格、括号和小数点)

我可以计算单个字符串字符,可以将列表内容转换为字符串并组合它们,也可以直接将它们连接成字符串

如果我需要打印的行(“Test#”,k,voltage _list)的计算结果是Test#seven[2.45,2.51],我不知道如何计算括号和小数点以及列表元素之间的空格

所需输出

=========================
my_text more [1.23, 4.56]
=========================
代码

    the_list = [1.23, 4.56]

    mystr = ("my_text", "more", the_list)
    print(mystr)
    print('\n'*2)
    
    
    string_tot = 0
    for elem in mystr:        
        if isinstance(elem, str):
            string_count = len(elem)
            string_tot += string_count + 2
            print("string_tot : ", string_tot)
            print('\n')
        elif isinstance(elem, list):
            print("elem is list")
            elem_list_count = len(elem) + 2
            char_to_string = "".join(map(str, elem))
            print("char_to_string : ", char_to_string)
            list_count = len(char_to_string)
            print("list_count : ", list_count)
  
            string_tot += list_count
            print("string_tot : ", string_tot)
            print('\n')

您只需创建最终字符串并获取其长度。例如:

the_list=[1.23,4.56]
mystr=(“我的_文本”、“更多”,_列表)
最后一行=“{}{}{}”。格式(*mystr)
打印(“=”*len(最后一行))
打印(最后一行)
打印(“=”*len(最后一行))

您的预期输出到底是什么?嗨,克里希纳,如果我能计算出一行中有多少符号/CHR(包括空格、括号和小数点),我想打印到控制台上,我可以使用它生成下划线和上划线。所以一个整数输出是好的。只需使用
len(s)
,其中
s
str
对象。它仍然让我需要一个8的小提琴因子来解释标点符号(我想)the_list=[1.23,4.56]mystr=(“我的文本”,“更多”,the_list)final_line=“{}{}}}”。format(*mystr final_tot=len(final_line 8)+print(len(最后一行)打印(“=”*最后一行,“\n',mystr,sep=”)我已将代码添加到问题的底部,因为它不允许我将文本格式化为注释中的代码。@Windy71您不需要打印
mystr
,只需打印
最后一行
,因为它已经是格式化字符串:)更新了我的答案,请尝试一下,对不起,dukkee,我没有意识到打印未格式化的线条会带来什么不同,我真是太蠢了。非常感谢。