Python怎么比較字符串跟數(shù)字大小
慕標(biāo)6477519
2016-10-13 12:47:21
TA貢獻(xiàn)165條經(jīng)驗(yàn) 獲得超90個(gè)贊
Python 作為一個(gè) 矯情的解釋性語言,偏偏還是強(qiáng)數(shù)據(jù)類型的。(在這里我給它點(diǎn)一個(gè)大大的贊!!因?yàn)檫@樣的特性在調(diào)試中省很多時(shí)間。)
關(guān)于字符串和數(shù)字的比較大小。簡單粗暴的方法如下:
def?cmp_str_num(arg1,arg2): ????try: ????????if?float(arg1)?>?float(arg2): ????????????return?'{}?>?{}'.format(arg1,arg2) ????????elif?float(arg1)?==?float(arg2): ????????????return?'{}?=?{}'.format(arg1,?arg2) ????????return?'{}?<?{}'.format(arg1,?arg2) ????except?ValueError: ????????return?'Error?input'
當(dāng)然,可以隨意修改 return 值,以達(dá)到不同的效果。如果對于參數(shù)的類型有確定范疇的話(比如說,確定所比較的參數(shù)都是正整數(shù)之類的。)則可以做出如下簡化:
def?cmp_str_num(arg1,arg2): ????arg1?=?int(arg1) ????arg2?=?int(arg2) ????if?arg1?>?arg2: ????????return?'{}?>?{}'.format(arg1,arg2) ????elif?arg1?==?arg2: ????????return?'{}?=?{}'.format(arg1,?arg2) ????return?'{}?<?{}'.format(arg1,?arg2)
舉報(bào)