python实用小方法
生活随笔
收集整理的這篇文章主要介紹了
python实用小方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
一、創建隨機字母
import random# 創建隨機字母 def make_code(n):res = ''for i in range(n):num = str(random.randint(1, 9)) # 隨機選取1到9的一個整數letter = chr(random.randint(65, 90)) # 隨機選大寫英文的一個字母group = random.choice([num, letter]) # 隨機選取整數還是大寫字母res += group # 循環次數加到空字符串中return res print(make_code(4))二、glob正則匹配出需要的文件
# 正則匹配出需要的文件 import globpath = r"D:\PycharmProjects\maple\face" for name in glob.glob('{}\*[0-9].*'.format(path)):print(name) # 結果 # D:\PycharmProjects\maple\face\Myface1.jpg # D:\PycharmProjects\maple\face\Myface2.jpg # D:\PycharmProjects\maple\face\Myface3.jpg # D:\PycharmProjects\maple\face\Myface4.jpg # D:\PycharmProjects\maple\face\Myface5.jpg# 匹配多種后綴名 res=glob.glob('{}\*.*[xlsx|XLS]'.format(r"********"))print(res)三、判斷元素是否為數字
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' import numpy as np # 判斷元素是否為數字 def is_number(s):try:if np.isnan(s) or s == False or s == True:return Falseexcept Exception:passtry:# 判斷是否為浮點數float(s)return Trueexcept Exception:passtry:import unicodedata # 處理ASCii碼的包# 把一個表示數字的字符串轉換為浮點數返回的函數unicodedata.numeric(s)return Trueexcept (TypeError, ValueError):passreturn Falsenumbers = [12, "43", "地方", None, np.nan, 88.99, False, True] print([is_number(i) for i in numbers]) # 結果 # [True, True, False, False, False, True, False, False]五、格式化
# 格式化10進制 print(format(10,"b")) # 格式化8進制 print(format(10,"o")) # 格式化16進制 print(format(10,"x"))六、精確處理數字
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' # 精確處理數字 a=1.1 b=3.2 print(a+b)from decimal import Decimal a=Decimal('1.1') b=Decimal('3.2') print(a+b)七、正則匹配
# 正則匹配 import re # 郵箱 res1='email1:378533872@qq.com email2:333312312@163.com eamil3:alexsb123@gmail.com' res=re.findall('\d+@\w+\.\w+',res1) print(res) # 數字 res2="1-12*(60+(-40.35/5)-(-4*3))" res=re.findall('(\d+\.\d+|\d+)',res2) print(res)八、flask-web
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' from aiohttp import web async def index(request):return web.Response(text='Hello World')async def api(request):data = await request.json()question = data['question']return web.json_response({"state":question})app = web.Application() app.add_routes([web.get('/', index),web.post('/api', api)])if __name__ == '__main__':web.run_app(app, host='127.0.0.1', port=5000)九、unicode轉換
s="\u4E1C\u65B9\u8BC1\u5238" print(s.encode('unicode_escape').decode('unicode_escape')) #東方證券十、repr()的應用
d=datetime.datetime(2020,1,2,0,0) print(d) #2020-01-02 00:00:00 print(repr(d)) #返回該對象名字的str #datetime.datetime(2020, 1, 2, 0, 0)十一、節假日判斷
#安裝pip install chinesecalendarfrom chinese_calendar import is_holiday today = datetime.datetime.now() res=is_holiday(today) print(res)十二、判斷中文
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' def is_Chinese(word):for ch in word:if '\u4e00' <= ch <= '\u9fff':return Truereturn Falsedef is_number(word):res = re.search("^[0-9]*$", word)if res:return Truereturn False十三、判斷文件的編碼格式
import chardetwith open(r"*****","rb") as f:print (chardet.detect(f.read()))十四、pip加速
pip install scrapy -i http://mirrors.aliyun.com/pypi/simple/ --trusted-host mirrors.aliyun.com十五、生成隨機ChromeAgent
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' import randomfirst_num = random.randint(55, 62) third_num = random.randint(0, 3200) fourth_num = random.randint(0, 140)class FakeChromeAgent:os_type = ['(Windows NT 6.1; WOW64)', '(Windows NT 10.0; WOW64)', '(X11; Linux x86_64)','(Macintosh; Intel Mac OS X 10_12_6)']chrome_version = 'Chrome/{}.0.{}.{}'.format(first_num, third_num, fourth_num)@classmethoddef get_agent(cls):return ' '.join(['Mozilla/5.0', random.choice(cls.os_type), 'AppleWebKit/537.36','(KHTML, like Gecko)', cls.chrome_version, 'Safari/537.36'])print(FakeChromeAgent.get_agent())十六、獲取本地mac地址
import uuid# 獲取mac地址 addr_num = hex(uuid.getnode())[2:] mac = "-".join(addr_num[i: i + 2] for i in range(0, len(addr_num), 2)) print(mac)十七、流下載大文件
''' 遇到問題沒人解答?小編創建了一個Python學習交流QQ群:778463939 尋找有志同道合的小伙伴,互幫互助,群里還有不錯的視頻學習教程和PDF電子書! ''' import requestsurl = "http://wx4.sinaimg.cn/large/d030806aly1fq1vn8j0ajj21ho28bduy.jpg" rsp = requests.get(url, stream=True) with open('1.jpg', 'wb') as f:for i in rsp.iter_content(chunk_size=1024): # 邊下載邊存硬盤, chunk_size 可以自由調整為可以更好地適合您的用例的數字f.write(i)十八、redis有序集合實現權重取值
import redisdb_conn = redis.ConnectionPool(host="*.*.*.*", port=****, password="*****",db=0) redis_clint = redis.Redis(connection_pool=db_conn, max_connections=10)score=2 #分數值,數值越大,排序的時候越靠前 # 添加值 redis_clint.zadd("key_name", {"value001":score or 1})# 大到小排序取值 res=redis_clint.zrevrange("key_name", 0, -1, withscores=False, score_cast_func=float) value=res[0].decode()# 判斷數據是否存在,沒有返回的None,有返回的是分數值 res=redis_clint.zscore("key_name",value) print(res)# 處理數據后,刪除值 res=redis_clint.zrem("key_name",value) print(res)十九、查找文件,刪除文件
import osdef find_file(dir="",file=""):for item in os.listdir(dir):print(item,file)if file in item:return os.path.join(dir,item)if os.path.isdir(os.path.join(dir,item)):res=find_file(os.path.join(dir,item),file)return res總結
以上是生活随笔為你收集整理的python实用小方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Python 中的hash
- 下一篇: python内建集合模块collecti