【PAT 乙】1002 写出这个数

题目

读入一个正整数 n,计算其各位数字之和,用汉语拼音写出和的每一位数字。
输入格式:
每个测试输入包含 1 个测试用例,即给出自然数 n 的值。这里保证 n 小于 10​100
输出格式:
在一行内输出 n 的各位数字之和的每一位,拼音数字间有 1 空格,但一行中最后一个拼音数字后没有空格。
输入样例:
1234567890987654321123456789
输出样例:
yi san wu

分析

输入一个整数,将每一位进行拆分求和,将求和的每一位用汉语拼音输出,可以用一个列表与数字相对应。
看好输出的要求,要求中间有空格,而最后一个输出结果后面没有空格。

程序(python)

n=int(input())
a=str(n)
b=["ling","yi","er","san","si","wu","liu","qi","ba","jiu"]
count=0
d=[]
for i in range(len(a)):
    count+=int(a[i])#数位求和
c=str(count)
for j in c:
    d.append(b[int(j)])
print(' '.join(d))

知识点

输出函数print()

  1. 直接输出
    输出类型为数值和字符串都可以利用print函数直接输出,
print(*objects, sep=' ', end='\n', file=sys.stdout)
#objects--表示要输出的对象,如果输出是多个对象的时候,要用逗号隔开,用逗号隔开的时候,输出结果之间会有空格。
#sep--用来间隔对象
#end--设定结尾,"/n"是默认的换行符," "是空格不换行。
#file--要写入的文件的对象
print("you""qian")
print("you","qian")
print("you","qian",sep="!")
运行结果:
youqian 
you qian
you!qian
  1. 格式化输出
    以"%–"格式控制符来控制输出
    常用格式字符串归纳:
    %s—字符串
    %d—十进制整数
    %o—八进制整数
    %x—十六进制整数
    %b—二进制整数
    %f—浮点数
print("%s is %d years old"%('s',14))
输出结果:
s is 14 years old
  1. 不换行输出
    输出在默认的时候(end="/n")即总是换行的。可以通过指定end的值来改变间隔或者换行。
for i in range(5):
    print(i)
#输出:0
	   1
	   2
	   3
	   4
for i in range(5)print(i,end=" ")
#输出:0 1 2 3 4 最后一位输出的后面带空格,且输出不换行。
for i in range(5):
    print(i,end=",")
#输出:0,1,2,3,4,

想要输出结果最后一位后面不带空格,可以使用join()函数。注意,join()函数智能连接字符串,组成一个新的字符串输出。
字符串:str=“one two three”
列表:list=[‘one’,‘two’,‘three’]
元组:tuple=(‘one’,‘two’,‘three’)

'sep'.join(seq)
sep---分隔符
seq---需要连接的字符串,列表,元组,字典
str="one two three"
print(' '.join(str))
输出结果:o n e  t w o  t h r e e   最后一位输出结果后面是没有空格的。
list=['one','two','three']
print(','.join(list))
输出结果:one,two,three

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值