欢迎来到尧图网

客户服务 关于我们

您的位置:首页 > 汽车 > 维修 > Python字符串格式化方法输出到控制台

Python字符串格式化方法输出到控制台

2025/4/19 14:51:38 来源:https://blog.csdn.net/qq_43276566/article/details/141163069  浏览:    关键词:Python字符串格式化方法输出到控制台

python打印是这样的,我希望resource_id能够对齐输出:
在这里插入图片描述

3种格式化方法

%格式化

>>> pi=3.141592653589793
>>> e=2.718281828459045
>>> print("pi=%.2f e=%.3f" % (pi, e) )
pi=3.14 e=2.718

“”.format()格式化

>>> pi=3.141592653589793
>>> e=2.718281828459045
>>> print("pi={:.2f} e={:.3f}".format(pi, e))
pi=3.14 e=2.718

f-string格式化

>>> pi=3.141592653589793
>>> e=2.718281828459045
>>> print(f'pi={pi:.2f} e={e:.3f}')
pi=3.14 e=2.718

占位符的使用和对齐

在占位符中指定对齐方式、宽度和精度等格式。

左对齐、右对齐和居中对齐

  • 左对齐::
  • 右对齐::>width
  • 居中对齐::^width
name = "Alice"
formatted_string = "{:<10} is left-aligned".format(name)
print(formatted_string)formatted_string = "{:>10} is right-aligned".format(name)
print(formatted_string)formatted_string = "{:^10} is centered".format(name)
print(formatted_string)

指定宽度和精度

number = 123.456789
formatted_string = "{:.2f}".format(number)  # 保留两位小数
print(formatted_string)formatted_string = "{:10.2f}".format(number)  # 总宽度为10,保留两位小数
print(formatted_string)

Python 的字符串格式化方法

要使 resource_id 对齐,可以使用 Python 的字符串格式化方法。以下是一个示例代码,展示如何使用字符串格式化来对齐输出:

data = [("FieldA_2_0", 0.0, "5237aa80185eb4bc84af9d5b57c64562", "2024-06"),("FieldA_3_0", 6913682.0, "c8f7cac5c6e85efd3690650dfcf598e6", "2024-06"),("FieldA_4_0", 0.0, "cb5c0e991ba1bdc8ce5111a3cd50a878", "2024-06"),("FieldA_5_0", 0.0, "gap-resource", "2024-06"),("FieldB_0_1", 0.0, "4354", "2024-07"),("FieldB_1_1", 27900000.0, "4769", "2024-07"),("FieldA_0_1", 0.0, "0d9bbcf7c0f1e598d31031dca796337b", "2024-07"),("FieldA_1_1", 0.0, "1b5f8e7771d12e3424542624805d8816", "2024-07"),("FieldA_2_1", 0.0, "5237aa80185eb4bc84af9d5b57c64562", "2024-07"),("FieldA_3_1", 4100000.0, "c8f7cac5c6e85efd3690650dfcf598e6", "2024-07"),("FieldA_4_1", 0.0, "cb5c0e991ba1bdc8ce5111a3cd50a878", "2024-07"),
]# Define the format string with fixed widths for alignment
format_str = "{:<30} = {:<10} resource_id={:<36}, month={}"# Print each line with the specified format
for item in data:print(format_str.format(item[0], item[1], item[2], item[3]))

使用 pandas 库来处理和格式化数据

将需要格式化的数据存储到一个列表list中(若涉及多个字段,将多个字段打包为元组再append到list中即可),然后将list转为pandas的DataFrame即可。

solver_params = pywraplp.MPSolverParameters()
solver_params.SetDoubleParam(pywraplp.MPSolverParameters.RELATIVE_MIP_GAP, 1e-8)
solver_params.SetDoubleParam(pywraplp.MPSolverParameters.PRIMAL_TOLERANCE, 1e-8)
status = solver.Solve(solver_params)
result = []
if status == pywraplp.Solver.OPTIMAL:print("Solution:")print("Objective value =", solver.Objective().Value())for m in range(data["M"]):for c in range(data["ContractPngCount"]):result.append(("FieldB_{c}_{m}",PurchasedPng[c, m].solution_value(),data["ContractPngId"][c],data["MonthList"][m],))for l in range(data["ContractLngCount"]):result.append(("FieldC_{l}_{m}",PurchasedLng[l, m].solution_value(),data["ContractLngId"][c],data["MonthList"][m],))for i in range(data["IncrementalPngCount"]):result.append(("FieldA_{i}_{m}",IncrementalPngPurchased[i, m].solution_value(),data["IncrementalPngId"][i],data["MonthList"][m],))for j in range(data["IncrementalLngCount"]):result.append(("FieldD_{j}_{m}",IncrementalLngPurchased[j, m].solution_value(),data["IncrementalLngId"][i],data["MonthList"][m],))print(pd.DataFrame(result, columns=["Name", "Value", "Resource ID", "Month"]).to_string(index=False))
else:print("The problem does not have an optimal solution.")

版权声明:

本网仅为发布的内容提供存储空间,不对发表、转载的内容提供任何形式的保证。凡本网注明“来源:XXX网络”的作品,均转载自其它媒体,著作权归作者所有,商业转载请联系作者获得授权,非商业转载请注明出处。

我们尊重并感谢每一位作者,均已注明文章来源和作者。如因作品内容、版权或其它问题,请及时与我们联系,联系邮箱:809451989@qq.com,投稿邮箱:809451989@qq.com

热搜词