要將C語言轉(zhuǎn)化為python,前提:
專注于為中小企業(yè)提供成都網(wǎng)站建設(shè)、成都網(wǎng)站制作服務(wù),電腦端+手機(jī)端+微信端的三站合一,更高效的管理,為中小企業(yè)龍安免費(fèi)做網(wǎng)站提供優(yōu)質(zhì)的服務(wù)。我們立足成都,凝聚了一批互聯(lián)網(wǎng)行業(yè)人才,有力地推動了上1000+企業(yè)的穩(wěn)健成長,幫助中小企業(yè)通過網(wǎng)站建設(shè)實(shí)現(xiàn)規(guī)模擴(kuò)充和轉(zhuǎn)變。
1 對C語言語法即python編程均熟練掌握;
2 對算法相關(guān)有一定了解;
3 至少可以看懂要轉(zhuǎn)換的C語言程序。
由于C語言的語句,與python沒有對應(yīng)關(guān)系,所以只能按照如下方式轉(zhuǎn)換:
1 讀懂C語言代碼實(shí)現(xiàn)功能,可以以函數(shù)為單位;
2 按照功能,依照python方式實(shí)現(xiàn)相同功能。
在python中的數(shù)據(jù)類型轉(zhuǎn)換函數(shù)共有五類:
1.float(x) 將x轉(zhuǎn)換為一個(gè)浮點(diǎn)數(shù),x如果是一個(gè)字符串, 必須是數(shù)字類型的字符串
2.int(x) 將x轉(zhuǎn)換為一個(gè)整數(shù), x如果是一個(gè)字符串,必須是數(shù)字類型的字符串
3.str(x) 把x轉(zhuǎn)換為字符串類型, 任意數(shù)據(jù)類型都可以轉(zhuǎn)換為字符串
4.list(x) 把序列數(shù)據(jù)x轉(zhuǎn)為列表(注意:字典沒有順序,不是序列數(shù)據(jù))
5.tuple(x) 把序列數(shù)據(jù)x轉(zhuǎn)為元組(字典沒有順序,不是序列數(shù)據(jù))
你可以多去黑馬程序員視頻庫看看,里面這樣的知識點(diǎn)特別多
作用就是把合理的數(shù)據(jù)轉(zhuǎn)換為需要的類型。int()整數(shù),float()浮點(diǎn)數(shù),str()字符串,list()列表,tuple()元組,set()集合……
比如a='12'這個(gè)是字符串類型,用int函數(shù)a=int(a)這時(shí)變量a就是整型,字符串'12'變?yōu)榱苏麛?shù)12。Python沒有變量聲明的要求,變量的屬性在賦值時(shí)確定,這樣變量的類型就很靈活。
有一種題目判斷一個(gè)整數(shù)是否回文數(shù),用字符串來處理就很簡單
a=1234321#整數(shù)
if str(a)==str(a)[::-1]:#借助字符串反轉(zhuǎn)比較就可以確定是否回文數(shù)。
還比如元組b=(1,3,2,4),元組是不可以更新刪除排序成員的,但是列表是可以的,通過列表函數(shù)進(jìn)行轉(zhuǎn)換來實(shí)現(xiàn)元組的更新刪除和排序。
b=(1,3,2,4)
b=list(b)
b.sort()
b=tuple(b)
這時(shí)得到的元組b就是一個(gè)升序的元組(1,2,3,4)
再比如你要輸入創(chuàng)建整數(shù)列表或者整數(shù)元組基本上寫法相同,就是用對應(yīng)的函數(shù)來最后處理。
ls=list(map(int,input().split()))#這個(gè)就是列表
tup=tuple(map(int,input().split()))#這個(gè)就是元組
再比如有個(gè)叫集合的,集合有唯一性,可以方便用來去重。
ls=[1,2,3,1,2,3,1,2,3]
ls=list(set(ls))#通過set()去重后,現(xiàn)在的ls里就是[1,2,3]去重后的列表。
如果使用QTConsole的話,可以自定義一個(gè)_repr_latex_方法改變輸出。
class Latex_print():
self.t=text
def _repr_latex_(self):
text=Latex_print('\sum_{i=0}^{n}i^2')
text #或者異端地直接當(dāng)函數(shù)用:Latex_print('\sum_{i=0}^{n}i^2')
Python
是完全面向?qū)ο蟮恼Z言。函數(shù)、模塊、數(shù)字、字符串都是對象。并且完全支持繼承、重載、派生、多繼承,有益于增強(qiáng)源代碼的復(fù)用性。Python支持重載運(yùn)算符和動態(tài)類型。相對于Lisp這種傳統(tǒng)的函數(shù)式編程語言,Python對函數(shù)式設(shè)計(jì)只提供了有限的支持。有兩個(gè)標(biāo)準(zhǔn)庫(functools, itertools)提供了Haskell和Standard ML中久經(jīng)考驗(yàn)的函數(shù)式程序設(shè)計(jì)工具。
可以利用Python內(nèi)置工具2to3.py,幫你自動將Python2的代碼轉(zhuǎn)換為Python3的代碼的。這個(gè)腳本的位置位在Python安裝的根目錄\Python27\Tools\Scripts\2to3.py。
比如我手上有個(gè)Python 2.x的python腳本:D:\tmp\transform.py
可以通過打開命令提示符,定位至該要轉(zhuǎn)換的腳本目錄下,然后運(yùn)行
2to3.py -w transform.py
如果上述不加-w參數(shù),則默認(rèn)只是把轉(zhuǎn)換過程所對應(yīng)的diff內(nèi)容打印輸出到當(dāng)前窗口而已。加了-w,就是把改動內(nèi)容,寫回到原先的文件了。