一次性获得用户输入的一个长度为3的字符串,计算字符串中每个字符的Unicode码值的和的平方根,保留小数点后3位,并打印输出。输出结果采用宽度30个字符、右对齐输出、多余字符采用加号(+)填充。如果结果超过30个字符,则以结果宽度为准
input_str = input()
unicode_sum = 0
for char in input_str:
unicode_sum += ord(char)
print("{:+>30.3f}".format(unicode_sum ** 0.5))
用最简单的Python代码实现上述功能,代码如下:
import math
string = input("请输入一个长度为3的字符串:")
unicode_sum = ord(string[0]) + ord(string[1]) + ord(string[2])
result = math.sqrt(unicode_sum) # 计算平方根
result_str = "{:.3f}".format(result) # 保留3位小数
if len(result_str) > 30: # 如果结果宽度超过了30,则以结果宽度为准
print("{:<{width}}".format(result_str, width=len(result_str)))
else:
print("{:>30}".format(result_str).replace(" ", "+")) # 右对齐输出,使用加号填充
使用input()
函数获得用户输入,使用ord()
函数计算字符的Unicode码值之和,使用math.sqrt()
函数计算平方根,使用字符串格式化方法{:.3f}
保留3位小数。
根据题目要求,使用字符串格式化方法进行输出,若结果宽度超过30则以结果宽度为准。其中{:<{width}}
表示左对齐输出,使用空格填充至指定宽度;{:>30}
表示右对齐输出,使用空格填充至指定宽度;replace(" ", "+")
表示将空格替换为加号。
1.哈夫曼编码文本
2.matplotlib包画出哈弗曼树
3.tkinter实现可视化操作页面
4.简单的socket实现编码传输功能
s = input() # 获取用户输入 unicode_sum = ord(s[0]) + ord(s[1]) + ord(s[2]) # 计算字符的Unicode码值的和 result = pow(unicode_sum,0.5) # 计算平方根 result_str = '{:.3f}'.format(result) # 转换为字符串并保留小数点后三位
padding_len = max(0,30-len(result_str)) # 计算填充长度,如果结果超过30个字符,则以结果宽度为准,不需要填充 padding_str = '+'*padding_len # 构造填充字符串 output_str = padding_str + result_str # 拼接输出字符串 print('{:>30}'.format(output_str)) # 格式化输出结果