实现目标输入字符‘abc’,打印结果如下:
#####
#abc#
#####
string
=
input
(
"please enter:"
)
#查看图案的规律是比字符串的长度多2个字符
length
=
len
(string)
+
2
print
(
"#"
*
length)
print
(
"#"
+
string
+
"#"
)
print
(
"#"
*
length)
输出结果如下:
please enter:yes sir !
###########
#yes sir !#
###########
#测试一下中文的输出结果
please enter:中文
####
#中文#
####
中文的上下两行少了两个字符,这时只需判断出中文的个数,每个中文字占两个字符。
这里引用ord()函数,python自带的ord函数获取字符的整数表示。而其对英文字母符号沿用了ascii值。也就是ascii值小于128占一个字符。(ps:这里只考虑中英文,不考虑其他奇怪的字符)
string
=
input
(
"please enter:"
)
#查看图案的规律是比字符串的长度多2个字符
#length = len(string) + 2
#这里需要计算包含中文的字符串的长度
length
=
2
for
i
in
string:
if
ord
(i)
<
128
:
length
+=
1
else
:
length
+=
2
print
(
"#"
*
length)
print
(
"#"
+
string
+
"#"
)
print
(
"#"
*
length)
输出结果如下:
please enter:hello 中国!
##############
#hello 中国!#
##############
输出结果如下:
please enter:hello 中国!
##############
#hello 中国!#
##############