python數字轉換
❶ python中將阿拉伯數字轉換為中文
第一種方案:
def num_to_char(num):
"""數字轉中文"""
num=str(num)
new_str=""
num_dict={"0":u"零","1":u"一","2":u"二","3":u"三","4":u"四","5":u"五","6":u"六","7":u"七","8":u"八","9":u"九"}
listnum=list(num)
# print(listnum)
shu=[]
for i in listnum:
# print(num_dict[i])
shu.append(num_dict[i])
new_str="".join(shu)
# print(new_str)
return new_str
第二種方案
_MAPPING = (u'零', u'一', u'二', u'三', u'四', u'五', u'六', u'七', u'八', u'九', u'十', u'十一', u'十二', u'十三', u'十四', u'十五', u'十六', u'十七',u'十八', u'十九')
_P0 = (u'', u'十', u'百', u'千',)
_S4 = 10 ** 4
def _to_chinese4(num):
assert (0 <= num and num < _S4)
if num < 20:
return _MAPPING[num]
else:
lst = []
while num >= 10:
lst.append(num % 10)
num = num / 10
lst.append(num)
c = len(lst) # 位數
result = u''
for idx, val in enumerate(lst):
val = int(val)
if val != 0:
result += _P0[idx] + _MAPPING[val]
if idx < c - 1 and lst[idx + 1] == 0:
result += u'零'
return result[::-1]
❷ python把一個數字列表轉化為一個數字
解決辦法有三種:
1、用join()函數,但我發現使用join函數要求列表中的元素都是字元串,所以需要將列表中的元素都轉換為字元串。
a = [1,2,3,4,5]
a = [str(i) for i in a]
b = int(''.join(a))
print(b)
2、用sum()函數求和,那就需要對每個元素的十分位和百分位或者千分位進行轉換
a = [1,2,3,4,5]
a = [i *10**index for index,i in enumerate(a[::-1])]
b = sum(a)
print(b)
3、直接將列表轉換為字元串,然後去除[],,另外還要去除空格
a = [1,2,3,4,5]
b = str(a).replace("[","").replace("]","").replace(",","").replace(" ","")
print(int(b))
(2)python數字轉換擴展閱讀
join() 方法用於把數組中的所有元素放入一個字元串。
元素是通過指定的分隔符進行分隔的。
返回值:返回一個字元串。該字元串是通過把 arrayObject 的每個元素轉換為字元串,然後把這些字元串連接起來,在兩個元素之間插入separator字元串而生成的。
例子:
在本例中,將創建一個數組,然後把它的所有元素放入一個字元串:
<script type="text/javascript">
var arr = new Array(3)
arr[0] = "George"
arr[1] = "John"
arr[2] = "Thomas"
document.write(arr.join())
</script>
輸出:
George,John,Thomas
❸ python整數轉化為二進制
1、你可以自己寫函數採用 %2 的方式來算。
>>> binary = lambda n: '' if n==0 else binary(n/2) + str(n%2)>>> binary(5)'101'>>>
2、採用 python 自帶了方法 bin 函數,比如 bin(12345) 回返回字元串 '0b11000000111001', 這個時候在把0b去掉即可:
>>> bin(12345).replace('0b','')'11000000111001'
3、也可以採用字元串的 format 方法來獲取二進制:
>>> "{0:b}".format(12345)'11000000111001'>>>
❹ 如何用Python將十進制數字轉為二進制,以及將二進制轉為十六進制
1、將十進制轉換成二進制,利用bin()方法。
❺ python怎麼實現字元串和數字的轉換
#py3
fromfunctoolsimportrece
DIGITS={'0':0,'1':1,'2':2,'3':3,'4':4,'5':5,'6':6,'7':7,'8':8,'9':9}
defchar2num(s):#單個字元轉數字
returnDIGITS[s]
defstr2int(s):#整數字串轉化整數,不支持浮點數.浮點數得另寫一個
ifs[0]=='-':#要判斷一下該數字有沒有符號
return-rece(lambdax,y:10*x+y,map(char2num,s[1::]))#返回負數
else:
returnrece(lambdax,y:10*x+y,map(char2num,s))#返回正數
a='-123'
print(100+str2int(a))
❻ python怎麼將數字反轉後輸出
可以將數字轉換成字元串,字元串反轉之後再進行反轉輸出,例如:
a=12345
將a轉換成字元串並反轉
b=str(a)[-1:]
之後就在將b轉換成數字就行
c=int(b)
❼ python如何將數字轉化為字元串
一般數字直接用str(num)強轉就行了
例如:數字9 轉化成字元串str(9) 就這樣嘍
❽ python數字e+01怎麼轉成數字
通過『%f』%coord來把科學計數法轉為普通計數,通過map來對每個數值進行轉換。
科學記數法是一種記數的方法。把一個數表示成a與10的n次冪相乘的形式(1≤|a|<10,a不為分數形式,n為整數),這種記數法叫做科學記數法。當我們要標記或運算某個較大或較小且位數較多時,用科學記數法免去浪費很多空間和時間。
計算器或電腦表達10的冪是一般是用E或e,也就是1.99714E13=19971400000000。
❾ python如何把數字轉化為字元串
python中字元與數字相互轉換用chr()即可。 python中的字元數字之間的轉換函數 int(x [,base ]) 將x轉換為一個
❿ python怎麼把數字轉換為字元串
例如要將數字 144 轉換為字元串 '144',可使用內置類型構造器str()。
如果想要表示為十六進制或八進制數,可使用內置函數hex()或oct()。
想要更好地格式化,例如"{:04d}".format(144)生成'0144'而"{:.3f}".format(1.0/3.0)生成'0.333'。