第一种方法:
横状数据:
def func(*kargs): return kargs, //有“,” l = func(5,3,4,5,6) for i in l: print (i)
输出为:
(5, 3, 4, 5, 6)
想要将Python的数据由竖状改成横状须要你会用
改成竖状数据:
def func(*kargs): return kargs //无“,” l = func(5,3,4,5,6) for i in l: print (i)
输出为:
5
3
4
5
6
这是由于 return kargs 返回的是传入的参数即元组 (5, 3, 4, 5, 6) 所以遍历输出为竖状, 而 return kargs, 现实将传入的参数包装成元组返回 形如 (kargs, ) 情势,在此例中为 ((5, 3, 4, 5, 6), ) 由于遍历对象中只存在一个元组对象,即(5, 3, 4, 5, 6) 所以现实仅执行了 print((5, 3, 4, 5, 6))。
第二种方法:
1、python3.2
# -*- coding: utf-8 -*- def vertical_print(s): lines=s.strip('。').split(',') lines.reverse() print('\n'.join([' '.join(w) for w in zip(*lines)])) vertical_print("白天依山尽,黄河入海流,欲穷千里目,更上一层楼。")
2、python 2.5
# -*- coding: utf-8 -*- def vertical_print(s): lines=s.strip('。'.decode('utf8')).split(','.decode('utf8')) lines.reverse() print '\n'.join([' '.join(w) for w in zip(*lines)]) s="白天依山尽,黄河入海流,欲穷千里目,更上一层楼。".decode('utf8') vertical_print(s)
zip()的作用是把传入的多个iterable连系在一起。
比方list(zip("abc","def","ghi"))获得的是[('a', 'd', 'g'), ('b', 'e', 'h'), ('c', 'f', 'i')]。在这里,从zip(*lines)获得每行应当输出的字符构成的元组。
本质上这个顺序是一个相似矩阵转置的历程,中心就是zip()函数的挪用。
进修python要用python的思绪做演习啊。只管不受C的思绪限定才写好python。
以上就是python数据竖着怎样变横的?的细致内容,更多请关注ki4网别的相干文章!