第一種:來自於網絡。
#!/usr/bin/env python #-*- coding:utf-8 -*- #主題:文字變成豎排。 #來源:https://yq.aliyun.com/articles/538844 ##|觀|,|利|是|如|不|空|舌|,|明|無|得|故|怖|世|耨|蜜|上|真|即|波| ##|自|照|子|空|是|滅|中|身|乃|盡|苦|故|,|,|諸|多|多|咒|實|說|羅| ##|在|見|,|,|。|,|無|意|至|,|集|,|心|遠|佛|羅|,|,|不|咒|僧| ##|菩|五|色|空|舍|不|色|,|無|乃|滅|菩|無|離|,|三|是|是|虛|曰|揭| ##|薩|蘊|不|即|利|垢|,|無|意|至|道|提|掛|顛|依|藐|大|無|。|:|諦| ##|,|皆|異|是|子|不|無|色|識|無|,|薩|礙|倒|般|三|神|等|故|揭|,| ##|行|空|空|色|,|凈|受|聲|界|老|無|埵|,|夢|若|菩|咒|等|說|諦|菩| ##|深|,|,|,|是|,|想|香|。|死|智|,|無|想|波|提|,|咒|般|揭|提| ##|般|度|空|受|諸|不|行|味|無|,|亦|依|掛|,|羅|。|是|,|若|諦|薩| ##|若|一|不|想|法|增|識|觸|無|亦|無|般|礙|究|蜜|故|大|能|波|,|婆| ##|波|切|異|行|空|不|,|法|明|無|得|若|故|竟|多|知|明|除|羅|波|訶| ##|羅|苦|色|識|相|減|無|,|,|老|。|波|,|涅|故|般|咒|一|蜜|羅|。| ##|蜜|厄|,|,|,|。|眼|無|亦|死|以|羅|無|槃|,|若|,|切|多|揭| ##|多|。|色|亦|不|是|耳|眼|無|盡|無|蜜|有|。|得|波|是|苦|咒|諦| ##|時|舍|即|復|生|故|鼻|界|無|。|所|多|恐|三|阿|羅|無|,|,|,| x=u'觀自在菩薩,行深般若波羅蜜多時,照見五蘊皆空,度一切苦厄。舍利子,色不異空,空不異色,色即是空,空即是色,受想行識,亦復如是。舍利子,是諸法空相,不生不滅,不垢不凈,不增不減。是故空中無色,無受想行識,無眼耳鼻舌身意,無色聲香味觸法,無眼界,乃至無意識界。無無明,亦無無明盡,乃至無老死,亦無老死盡。無苦集滅道,無智亦無得。以無所得故,菩提薩埵,依般若波羅蜜多故,心無掛礙,無掛礙故,無有恐怖,遠離顛倒夢想,究竟涅槃。三世諸佛,依般若波羅蜜多故,得阿耨多羅三藐三菩提。故知般若波羅蜜多,是大神咒,是大明咒,是無上咒,是無等等咒,能除一切苦,真實不虛。故說般若波羅蜜多咒,即說咒曰:揭諦揭諦,波羅揭諦,波羅僧揭諦,菩提薩婆訶。' lines = 20 lens = len(x)//lines def printN(cur): s = "|" for j in range(0,lens+1): #列 try: s += x[cur + lines*j] + "|" #[當前行 + 總行數*list間隔], 13*0, 13*1, 13*2 except: pass return s for i in range(0,lines): #行 print(printN(i))
第二種:我寫的。
#心得:取string切片,可以直接切片。不用: def print_in_line(string,row=20): '''string 語句,row行數,direction 方向。原理:字數/行數的余數。''' ''' 字數/行數, 余數。決定了文字打印出來的坐標。''' len_col=len(string)//row +1 #必須加1,否則最后一列打不出來。 line='' for i in range(row): for j in range(len_col): try: line+=string[j*row+i] line+='|' #可以通過直接切片的方式,進行取值。錯誤則不打印連接符。 except: pass else: line+='\n' else: print(line) return line print('-'*100) x='''大王叫我來巡山 詞曲:趙英俊 演唱:賈乃亮,甜馨 太陽對我眨眼睛 鳥兒唱歌給我聽 我是一個努力干活兒 還不粘人的小妖精 別問我從哪里來 也別問我到哪里去 我要摘下最美的花兒 獻給我的小公舉 大王叫我來巡山 我把人間轉一轉 打起我的鼓 敲起我的鑼 生活充滿節奏感 大王叫我來巡山 抓個和尚做晚餐 山澗的水 無比的甜 不羡鴛鴦不羡仙
''' #如果原句帶有換行符,則需要對str做預處理。 #如果原句是漢字,含有英文字符,那么 #換行符。 if '\n' in x: x=x.replace('\n','。') print_in_line(x)
我的打印處理是這樣的:
大|亮|。|別|下|巡|的|個|鴦| 王|,|我|問|最|山|鑼|和|不| 叫|甜|是|我|美|。|。|尚|羡| 我|馨|一|從|的|我|生|做|仙| 來|。|個|哪|花|把|活|晚|。| 巡|太|努|里|兒|人|充|餐| 山|陽|力|來|。|間|滿|。| 。|對|干|。|獻|轉|節|山| 詞|我|活|也|給|一|奏|澗| 曲|眨|兒|別|我|轉|感|的| :|眼|。|問|的|。|。|水| 趙|睛|還|我|小|打|大|。| 英|。|不|到|公|起|王|無| 俊|鳥|粘|哪|舉|我|叫|比| 。|兒|人|里|。|的|我|的| 演|唱|的|去|大|鼓|來|甜| 唱|歌|小|。|王|。|巡|。| :|給|妖|我|叫|敲|山|不| 賈|我|精|要|我|起|。|羡| 乃|聽|。|摘|來|我|抓|鴛|
英文逗號的列寬和中文的符合寬度不一樣。所以需要另外替換一下。
做英文符號替換為中文,要另外開個帖子了。