1.引言在并發編程中我們有時候需要使用線程安全的隊列。如果我們要實現一個線程安全的隊列有兩種實現方式:一種是使用阻塞算法,另一種是使用非阻塞算法。使用阻塞算法的隊列可以用一個鎖(入隊和出隊用同一把鎖)或兩個鎖(入隊和出隊用不同的鎖)等方式來實現,而非阻塞的實現方式則可以使用循環CAS的方式來實現,本文讓我們一起來研究下DougLea是如何使用非阻塞的方式來實現線程安全隊列ConcurrentLinkedQueue的,相信從大師身上我們能學到不少并發編程的技
系統 2019-08-29 22:40:24 1870
上一篇:計算機二級Python學習筆記(一)其實昨天Python并沒有安裝成功,打開就報錯:于是今天先解決這個問題,搜了一下api-ms-win-crt-process-1-1-0.dll丟失,感謝這位老鐵的博客解決了我的問題【api-ms-win-crt-process-l1-1-0.dll丟失的處理,個人覺得完美】,分享給大家,如果因為系統丟失dll文件報錯可以借鑒一下。完美運行,繼續學習。第2章Python語言基本語法元素2.1程序的格式框架縮進:T
系統 2019-09-27 17:55:20 1869
操作系統:windows10安裝模塊:Pillowpytesseracttesseract-ocr1、首先安裝Pillow,可以選擇安裝windows版的安裝包下載地址:https://pypi.org/project/Pillow/#files此處我選擇安裝Pillow-6.1.0.win-amd64-py2.7.exe2、安裝完成后再進行安裝pytesseract下載地址:https://pypi.org/project/pytesseract/#fi
系統 2019-09-27 17:54:22 1869
前言Pythonnet這個?瘧?的項目的出現,使得我們可以用一種新的方式,讓C#可以和Python之間進行互操作。但是它的設置和部署可能有點問題,真的是這樣嗎?本文我會介紹Python.Included這個項目,它不但優雅的解決了這個問題,并且讓.NET開發者可以輕松愉快的讓.NET與Python進行互操作。作為概念的證明,我將使用Numpy.Net進行展示,它是一個.NET標準庫,它為Python的Numpy提供了一個強類型API,并且使用它并不需要在W
系統 2019-09-27 17:53:59 1869
一、介紹如果在Python中需要對用戶輸入的密碼或者其他內容進行加密,首選的方法是生成hash值。在Python中可以利用二個模塊來進行:-crypt-hashlib二、crypt(一)crypt的主要方法和常量名稱描述md5(…)利用md5算法加密sha1(…)利用sha1算法加密sha224(…)利用sha224算法加密sha256(…)利用sha256算法加密sha384(…)利用sha384算法加密sha512(…)利用sha512算法加密(二)使
系統 2019-09-27 17:52:57 1869
在Python2和Python3中都提供print()方法來打印信息,但兩個版本間的print稍微有差異主要體現在以下幾個方面:1.python3中print是一個內置函數,有多個參數,而python2中print是一個語法結構;2.Python2打印時可以不加括號:print'helloworld',Python3則需要加括號print("helloworld")3.Python2中,input要求輸入的字符串必須要加引號,為了避免讀取非字符串類型發生的
系統 2019-09-27 17:52:34 1869
今天模擬定義map函數.寫著寫著就發現Python可變長度參數的機制真是靈活而強大.假設有一個元組t,包含n個成員:t=(arg1,...,argn)而一個函數f恰好能接受n個參數:f(arg1,...,argn)f(t)這種做法顯然是錯的,那么如何把t的各成員作為獨立的參數傳給f,以便達到f(arg1,...,argn)的效果?我一開始想到的是很原始的解法,先把t的各個成員變為字符串的形式,再用英文逗號把它們串聯起來,形成一個"標準參數字符串":str_
系統 2019-09-27 17:52:29 1869
簡單使用最開始,我們用最短的代碼體驗一下logging的基本功能。importlogginglogger=logging.getLogger()logging.basicConfig()logger.setLevel('DEBUG')logger.debug('logsomething')#輸出out>>DEBG:root:logsomething第一步,通過logging.getLogger函數,獲取一個loger對象,但這個對象暫時是無法使用的。第二步
系統 2019-09-27 17:52:26 1869
#!/usr/bin/envpython#coding=utf-8#------------------------------------------------------#Name:Apache日志分析腳本#Purpose:此腳本只用來分析Apache的訪問日志#Version:2.0#Author:LEO#Created:2013-4-26#Modified:2013-5-4#Copyright:(c)LEO2013#---------------
系統 2019-09-27 17:52:04 1869
導言篇:我的python環境是:python3.6.5這里我選擇的GUI編程包是:tkintertkinker在python2.5以后就是自帶包了,所以我們不需要另外安裝tkinker相對與其他pythonGUI編程的包而已,是相對容易入手的代碼篇:#這是系統的登錄界面importtkinterfromtkinterimportmessageboxclassLogin(object):def__init__(self):#創建主窗口,用于容納其它組件sel
系統 2019-09-27 17:51:14 1869