如果不用功能。使用print函数输出这样的格式应该怎么写?
时间: 2024-09-21 22:08:43 浏览: 28
如果你想使用Python的基本`print`函数来实现类似格式的输出,可以借助字符串的拼接和格式化功能。例如,你可能会这样写:
```python
def print_padded_output(name, stream_times):
top_line = "Top: " + ("{:<8}".format(name)) # 使用左对齐并保留8个字符的格式
time_line = "Stream times: " + ("{:<4}".format(stream_times.lstrip("0"))) # 只显示非零前导零的4位数字
print(top_line)
print("-" * (len(top_line) + len(time_line))) # 在两行之间添加水平线
print(time_line)
# 示例
name = "My Super Long Na" # 假设名字需要左对齐
stream_times = "00123" # 假设时间需要去除多余的0并保留两位
print_padded_output(name, stream_times)
```
这个代码会打印出顶部和时间行,每个行都有固定的列宽,并且时间行会在中间插入一条水平线。注意这里的`lstrip("0")`用于去掉时间字符串开头的0。
相关问题
如何在Python中正确使用print函数输出不同类型的数据?
要掌握在Python中使用`print`函数输出不同类型的数据,首先需要了解`print`的基本语法和功能。`print`函数可以输出字符串、整数、浮点数以及布尔值等多种数据类型。例如,输出字符串时可以这样写:`print(
参考资源链接:[Python入门:从print到IDE](https://wenku.csdn.net/doc/z7iarf1omb?spm=1055.2569.3001.10343)
c语言中printf的改进,可以自己制作一个print函数然后输出各种值吗?不用占位符
C语言的`printf`确实提供了一种强大的模式匹配机制,允许你通过占位符(如 `%d`, `%s`, `%f` 等)指定要输出的数据类型。如果你想要自己制作一个类似功能的函数,可以设计一个接受不同类型参数并直接输出的函数。这里有一个简单的例子:
```c
#include <stdio.h>
#include <stdarg.h> // 需要用到可变参数列表
void print_value(int value) {
printf("%d", value);
}
void print_value(char* str) {
printf("%s", str);
}
void print_value(double num) {
printf("%.2f", num); // 输出保留两位小数
}
// 扩展到更多类型的输出...
void print_custom(void* value, const char* format_string) {
if (value != NULL) {
printf(format_string, value);
}
}
int main() {
int i = 10;
char s[] = "Hello";
double d = 3.1415;
print_value(i);
print_value(s);
print_value(d);
void* ptr = &i; // 假设ptr指向某个整数
print_custom(ptr, "%p"); // 输出地址
return 0;
}
```
这个自定义的`print_custom`函数接收一个`void*`指针和一个格式字符串,可以根据指针的内容来决定如何输出。这并不像`printf`那样通用,但对于某些特定场景,它可以提供定制化的输出。
阅读全文