可以給db文件添加密碼。
創(chuàng)新互聯(lián)是專(zhuān)業(yè)的隆子網(wǎng)站建設(shè)公司,隆子接單;提供網(wǎng)站設(shè)計(jì)、成都做網(wǎng)站,網(wǎng)頁(yè)設(shè)計(jì),網(wǎng)站設(shè)計(jì),建網(wǎng)站,PHP網(wǎng)站建設(shè)等專(zhuān)業(yè)做網(wǎng)站服務(wù);采用PHP框架,可快速的進(jìn)行隆子網(wǎng)站開(kāi)發(fā)網(wǎng)頁(yè)制作和功能擴(kuò)展;專(zhuān)業(yè)做搜索引擎喜愛(ài)的網(wǎng)站,專(zhuān)業(yè)的做網(wǎng)站團(tuán)隊(duì),希望更多企業(yè)前來(lái)合作!
在Python中異或操作符為,^,也可以記作XOR。按位異或的意思是。相同值異或?yàn)?,不同值異或?yàn)?.具體來(lái)講,有四種可能,0^0=0,0^1=1,1^0=1,1^1=0。我們還可總結(jié)出規(guī)律(A為0或1),0和A異或?yàn)锳本身。1和A異或?yàn)锳反。
加密操作,首先將文件轉(zhuǎn)換成二進(jìn)制數(shù),再生成與該二進(jìn)制數(shù)等長(zhǎng)的隨機(jī)密鑰,將二進(jìn)制數(shù)與密鑰進(jìn)行異或操作,得到加密后的二進(jìn)制數(shù)。解密操作,將加密后的二進(jìn)制程序與密鑰進(jìn)行異或操作,就得到原二進(jìn)制數(shù),最后將原二進(jìn)制數(shù)恢復(fù)成文本文件。
leetcode上有這么一道題:【136. Single Number】
這個(gè)題是給出一個(gè)非空列表,里面的元素只有一個(gè)只出現(xiàn)了一次,其余都出現(xiàn)了兩次,找出這個(gè)只出現(xiàn)了一次的元素。
這個(gè)題目很簡(jiǎn)單,寫(xiě)了一下直接提交:
翻了一下討論,發(fā)現(xiàn)了一個(gè)很簡(jiǎn)單快速的方法:
查了一下異或運(yùn)算,發(fā)現(xiàn)找到唯一值是異或運(yùn)算在python中的主要用途之一。其原理是這樣的:
輸出:70
當(dāng)a,b都轉(zhuǎn)換為二進(jìn)制:
輸出:0b1010與0b1001100
異或運(yùn)算是將兩個(gè)數(shù)相同位置(長(zhǎng)度不一時(shí)要對(duì)齊)的數(shù)值,不同為1時(shí),結(jié)果為1,否則為0 。比如:(0101) ^ (0011) = 0110。
這里a ^ b = 0b1000110,即70。
當(dāng)兩個(gè)數(shù)相同時(shí),異或運(yùn)算結(jié)果為0.
{ }.format()格式方法的一個(gè)指示器
例如:'{0:b}'.format(int(a,2)+int(b,2))
這個(gè)的意思就是 按照 2進(jìn)制 a + 2進(jìn)制b的格式 輸出
:?號(hào)后面帶填充的字符,只能是一個(gè)字符,不指定則默認(rèn)是用空格填充。
Python2.6 開(kāi)始,新增了一種格式化字符串的函數(shù)?str.format(),它增強(qiáng)了字符串格式化的功能。
基本語(yǔ)法是通過(guò)?{}?和?:?來(lái)代替以前的?%?。
format 函數(shù)可以接受不限個(gè)參數(shù),位置可以不按順序。
str.format() 格式化數(shù)字的多種方法:
Python divmod() 函數(shù)
Python 內(nèi)置函數(shù)
python divmod() 函數(shù)把除數(shù)和余數(shù)運(yùn)算結(jié)果結(jié)合起來(lái),返回一個(gè)包含商和余數(shù)的元組(a // b, a % b)。
在 python 2.3 版本之前不允許處理復(fù)數(shù)。
函數(shù)語(yǔ)法
divmod(a, b)
參數(shù)說(shuō)明:
a: 數(shù)字
b: 數(shù)字
實(shí)例
^ -------異或xor
想復(fù)雜了?
^就是數(shù)學(xué)里的 那個(gè)判斷的異或符號(hào)
但是python里是按2進(jìn)制算的
就是說(shuō)
10進(jìn)制的就按照轉(zhuǎn)換為2進(jìn)制 再轉(zhuǎn)換為10進(jìn)制來(lái)算
就是比如 5^3 =? 6?
因?yàn)椋?/p>
5 = 0101(b)
3 = 0011(b)
二進(jìn)制之后就是: 01100
再換回10進(jìn)制就是 6
deque是雙邊隊(duì)列,具有隊(duì)列和棧的性質(zhì)。相當(dāng)于可以在兩端操作的list。
以下是deque的常用方法:
數(shù)組初始化? = [None for _in range(rowNum)]
Python zip() 函數(shù)
zip() ?函數(shù)用于將可迭代的對(duì)象作為參數(shù),將對(duì)象中對(duì)應(yīng)的元素打包成一個(gè)個(gè)元組,然后返回由這些元組組成的列表。
如果各個(gè)迭代器的元素個(gè)數(shù)不一致,則返回列表長(zhǎng)度與最短的對(duì)象相同,利用 * 號(hào)操作符,可以將元組解壓為列表。
res?=?[a?+?b?for?a,?b?in?zip([0]?+?res,?res?+?[0])]
這句琢磨了半天
感覺(jué)應(yīng)該跟三元表達(dá)式一樣是個(gè)倒裝句
但是其實(shí)應(yīng)該是個(gè)省略句。。。
1、python自帶punctuation包,可以消除所有中文標(biāo)點(diǎn)符號(hào)。
Python itertools模塊combinations方法
itertools模塊combinations(iterable, r)方法可以創(chuàng)建一個(gè)迭代器,返回iterable中所有長(zhǎng)度為r的子序列,返回的子序列中的項(xiàng)按輸入iterable中的順序排序。
例1:
例2、實(shí)現(xiàn)一位數(shù)組的所有排列組合:
例3:利用chain.from_iterable方法將多個(gè)迭代器連接起來(lái)
網(wǎng)頁(yè)題目:包含python中xor函數(shù)的詞條
鏈接地址:http://m.kartarina.com/article30/dodecpo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供建站公司、響應(yīng)式網(wǎng)站、靜態(tài)網(wǎng)站、標(biāo)簽優(yōu)化、軟件開(kāi)發(fā)、自適應(yīng)網(wǎng)站
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來(lái)源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容