日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > python >内容正文

python

【Python】进制转换

發布時間:2025/3/21 python 33 豆豆
生活随笔 收集整理的這篇文章主要介紹了 【Python】进制转换 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

python 建立函數,輸入二進制數字,輸出二進制字符串

# -*- coding: utf-8 -*- """ Created on Fri Aug 17 10:44:58 2018@author: A3 """import numpy as npclass digit_conversion():def __init__(self):pass def digit_2to10(self,data):'''十進制輸入,二進制輸出'''data_con = []for i in range(len(data)):data_i = int(data[i]) * (2 ** (len(data) - i - 1))data_con.append(data_i) return sum(data_con) def digit_10to2(self,data):'''二進制輸入,十進制輸出'''data_con = []while data >= 1:p = 1 if data % 2 > 0 else 0 data_con.append(str(p))data = int(data / 2)return ''.join(data_con[::-1]) #或者用reversedef derect_2to2_1(self,data1,data2):'''第一種方法,二進制輸入,二進制輸出'''n1,n2 = list(data1[::-1]),list(data2[::-1])if len(data1) > len(data2):for i in range(1,(len(data1) - len(data2) + 1)):n2.append('0')elif len(data1) < len(data2):for i in range(1,(len(data2) - len(data1) + 1)):n1.append('0') data1,data2 = ''.join(n1),''.join(n2)data_con = []n = 0for i in range(len(data1)):data_i = 0 if (int(data1[i]) + int(data2[i]) + n) == 0 or (int(data1[i]) + int(data2[i]) + n) == 2 else 1n = 1 if (int(data1[i]) + int(data2[i]) + n)> 1 else 0data_con.append(str(data_i))return ''.join(data_con[::-1])def derect_2to2_2(self,data1,data2):'''第二種方法,二進制輸入,二進制輸出'''num = list(str(int(data1) + int(data2)))[::-1]q = 0box = []for i in range(len(num)):p = int(num[i])p = 0 if p + q == 0 or p + q == 2 else 1q = 1 if int(num[i]) + q > 1 else 0box.append(str(p))box = ''.join(box) + '1' if q == 1 else ''.join(box) return box[::-1] if __name__ == "__main__":dc = digit_conversion()result = dc.derect_2to2_2(input('please input a num:\n'),input('please input another num:\n'))print('sum is: %s' % result)

總結

以上是生活随笔為你收集整理的【Python】进制转换的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。