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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 >

python常用函数中文_【python】python常用函数

發布時間:2023/12/1 30 豆豆
生活随笔 收集整理的這篇文章主要介紹了 python常用函数中文_【python】python常用函数 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

urlencode與urldecode

當url中包含中文或者參數包含中文,需要對中文或者特殊字符(/、&)做編碼轉換。

urlencode的本質:把字符串轉為gbk編碼,再把\x替換成%。如果終端是utf8編碼的,需要把結果再轉成utf8輸出,否則會亂碼。

urlencode

urllib庫里面的urlencode函數,可以把key-value健值對的key、value都進行urlencode并轉換成a=1&b=2的字符串。

#key-value健值對

>>> from urllib import urlencode

>>> data={'a':'a1','b':'中文'}

>>> print urlencode(data)

a=a1&b=%E4%B8%AD%E6%96%87

>>> data={'a':'a1','b測試':'中文'}

>>> print urlencode(data)

a=a1&b%E6%B5%8B%E8%AF%95=%E4%B8%AD%E6%96%87

urllib庫里面的quote函數,可以針對單個字符串進行urlencode轉換。

#string

>>> from urllib import quote

>>> data="測試"

>>> print quote(data)

%E6%B5%8B%E8%AF%95

urldecode

urllib只提供了unquote()函數。

>>> from urllib import unquote

>>> unquote("%E6%B5%8B%E8%AF%95")

'\xe6\xb5\x8b\xe8\xaf\x95'

>>> print unquote("%E6%B5%8B%E8%AF%95")

測試

>>>

json處理

兩個函數:

函數

描述

json.dumps

將python對象編碼成JSON字符串(對象->字符串)

json.loads

將已經編碼的json字符串解碼為Python對象(字符串->對象)

json.dumps

語法:json.dumps(data, sort_keys=True, indent=4,separators=(self.item_separator, self.key_separator))

>>> import json

>>> data={"a":"a1","b":"b1"}

>>> jsonstr=json.dumps(data)

>>> print jsonstr

{"a": "a1", "b": "b1"}

#輸出格式化

>>> print json.dumps(data, sort_keys=True, indent=4,separators=(",",":"))

{

"a":"a1",

"b":"b1"

}

>>>

python原始類型向json類型的轉換對照表:

Python

JSON

dict

object

list,tuple

array

str,unicode

string

int,long,float

number

True

true

False

false

None

null

json.loads

json.loads——返回Python字段的數據類型

>>> import json

>>> jsonstr='{"a":"a1","b":"b1"}'

>>> print json.loads(jsonstr)

{u'a': u'a1', u'b': u'b1'}

>>> jsonstr='{"a":"a1","b":null,"c":false,"d":{"aa":"aa1","bb":"bb1"}}'

>>> print json.loads(jsonstr)

{u'a': u'a1', u'c': False, u'b': None, u'd': {u'aa': u'aa1', u'bb': u'bb1'}}

>>> jsonstr='[{"a":"a1"},{"b":"b2"}]'

>>> print json.loads(jsonstr)

[{u'a': u'a1'}, {u'b': u'b2'}]

json類型轉換為python類型的對照表

JSON

Python

object

dict

array

list

string

unicode

number(int)

int,long

number(real)

float

true

True

false

False

null

None

結論:print只能輸出python認識的數據類型,python.dumps才可以格式化輸出。

計算字符串md5

方法一:使用md5包

import md5

def calMd5(signdata,signkey,joiner=""):

signdata=signdata+joiner+""+signkey

m=md5.new(signdata)

sign = m.hexdigest()

return sign

方法二:使用hashlib包

import hashlib

def calHashMd5(signdata,signkey,joiner=""):

signdata=signdata+joiner+""+signkey

m=hashlib.md5(signdata)

sign = m.hexdigest()

return sign

計算hmacsha1

hmac:密鑰相關的哈希運算消息認證碼,hmac運算利用哈希算法(可以是MD5或者SHA-1),以一個密鑰和一個消息為輸入,生成一個消息摘要作為輸出。

作用:

(1)驗證接受的授權數據和認證數據;

(2)確認接受到的命令請求是已經授權的請求且傳送過程沒有被篡改

import hmac

import base64

def hmacSha1WithBase64(signdata,signkey):

sign = hmac.new(signkey, signdata,sha1).digest()

sign = base64.b64encode(sign)

return sign

字符串拼接

from collections import OrderedDict

def composeStr(data,joiner,withkey=True,key_value_joiner="="):

data = OrderedDict(sorted(data.items(), key=lambda t:t[0]))

if withkey :

signdata = joiner.join([key_value_joiner.join((str(key), str(elem))) for key, elem in data.iteritems()])

else :

signdata= joiner.join([elem for key, elem in data.items()])

return signdata

總結

以上是生活随笔為你收集整理的python常用函数中文_【python】python常用函数的全部內容,希望文章能夠幫你解決所遇到的問題。

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