1.如果模塊是被導(dǎo)入,__name__的值為模塊名字2.如果模塊是被直接執(zhí)行,__name__的值為'__main__'Py1.py復(fù)制代碼代碼如下:#!/usr/bin/envpythondeftest():print'__name__=',__name__if__name__=='__main__':test()Py2.py復(fù)制代碼代碼如下:#!/usr/bin/envpythonimportPy1.pydeftest():print'__name__
系統(tǒng) 2019-09-27 17:38:30 1754
將套接字流重定向到標(biāo)準(zhǔn)輸入或輸出流#!/usr/bin/envpython3"""測(cè)試socket-stream重定向模式"""importsys,os,timefrommultiprocessingimportProcessfromsocketimport*definitListenerSocket(port=50008,host=''):"""初始化在服務(wù)器模式下調(diào)用者用于監(jiān)聽連接的套接字"""sock=socket()try:sock.bind((h
系統(tǒng) 2019-09-27 17:38:28 1754
iops簡(jiǎn)介iops主要用在數(shù)據(jù)方面,這個(gè)指標(biāo)是數(shù)據(jù)庫(kù)性能評(píng)定的一個(gè)重要參考,iops的是每秒進(jìn)行讀寫(I/O)操作的次數(shù),主要看隨機(jī)訪問的性能,一般為了iops增高都要依靠磁盤陣列,實(shí)際線上的數(shù)據(jù)庫(kù)基本都是raid10的配置,raid5在實(shí)際生產(chǎn)環(huán)境中如果壓力上來是抗不住的,當(dāng)然也要開具體業(yè)務(wù)壓力情況,如果是用物理機(jī)就要看iops在實(shí)際中能跑到多少值,現(xiàn)在云也普遍了,如果你用的RDS云數(shù)據(jù)庫(kù),這個(gè)iops是可以根據(jù)業(yè)務(wù)情況自己選擇的,基本是個(gè)參數(shù),可以按
系統(tǒng) 2019-09-27 17:38:24 1754
Python通過pip安裝Django詳細(xì)介紹經(jīng)過前面的Python包管理工具的學(xué)習(xí),接下來我們就要基于前面的知識(shí),來配置Django的開發(fā)與運(yùn)行環(huán)境。首先是安裝Django(通過pip安裝):pipinstallDjango輸出的結(jié)果在我這里是這樣的:Downloading/unpackingDjangoDownloadingDjango-1.5.2.tar.gz(8.0MB):8.0MBdownloadedRunningsetup.pyegg_info
系統(tǒng) 2019-09-27 17:38:21 1754
我們都知道并發(fā)(不是并行)編程目前有四種方式,多進(jìn)程,多線程,異步,和協(xié)程。多進(jìn)程編程在python中有類似C的os.fork,當(dāng)然還有更高層封裝的multiprocessing標(biāo)準(zhǔn)庫(kù),在之前寫過的python高可用程序設(shè)計(jì)方法中提供了類似nginx中masterprocess和workerprocess間信號(hào)處理的方式,保證了業(yè)務(wù)進(jìn)程的退出可以被主進(jìn)程感知。多線程編程python中有Thread和threading,在linux下所謂的線程,實(shí)際上是LW
系統(tǒng) 2019-09-27 17:38:17 1754
前言流量信息可以直接在/proc/net/dev中進(jìn)行查看,筆者實(shí)現(xiàn)的程序使用命令:pythonnet.pyinterface其中interface為網(wǎng)卡名稱,使用什么網(wǎng)卡,電腦有哪些網(wǎng)卡,可以使用sudoifconfig進(jìn)行查看。Python實(shí)現(xiàn)的程序如下:#coding:utf-8importsys,time,os'''Inter-|Receive|Transmitface|bytespacketserrsdropfifoframecompressed
系統(tǒng) 2019-09-27 17:38:09 1754
前言任何應(yīng)用都離不開數(shù)據(jù),所以在學(xué)習(xí)python的時(shí)候,當(dāng)然也要學(xué)習(xí)一個(gè)如何用python操作數(shù)據(jù)庫(kù)了。MySQLdb就是python對(duì)mysql數(shù)據(jù)庫(kù)操作的模塊。今天寫了個(gè)工具,目的是把csv中的數(shù)據(jù)插入到數(shù)據(jù)庫(kù)中去。其中有一部分,是需要分別向兩張表中插入兩條數(shù)據(jù),如果第二張表中的數(shù)據(jù)已經(jīng)存在,那么第一張表中的數(shù)據(jù)也不需要插入。然后通過百度查找發(fā)現(xiàn),其實(shí)MySQLdb庫(kù),自帶了事務(wù)處理的功能,pymysql庫(kù)也是一樣。conn=MySQLdb.conne
系統(tǒng) 2019-09-27 17:38:06 1754
cmp()方法比較兩個(gè)列表的元素。語(yǔ)法以下是cmp()方法的語(yǔ)法:cmp(list1,list2)參數(shù)list1--這是要進(jìn)行比較的第一個(gè)列表list2--這是要進(jìn)行比較的第二個(gè)列表返回值如果元素是相同類型的,執(zhí)行比較,并返回結(jié)果。如果元素是不同的類型,檢查,看看他們是否是數(shù)字如果是數(shù)字必要時(shí)強(qiáng)制進(jìn)行數(shù)字比較如果任一元素是數(shù)字,然后在另一元素是“大”(數(shù)字是“最小”)否則,類型是按名稱字母順序排序如果到達(dá)了列表中的一個(gè)的結(jié)束,較長(zhǎng)的列表是“大”。如果耗盡列
系統(tǒng) 2019-09-27 17:38:03 1754
1、raw_input():raw_input()是python的內(nèi)建函數(shù),通過讀取控制臺(tái)的輸入與用戶實(shí)現(xiàn)交互。raw_input()可以讓用戶輸入字符串(即等待用戶輸入內(nèi)容),并存放到一個(gè)變量里。#!/usr/bin/envpython#-*-coding:utf-8-*-#將用戶輸入的內(nèi)容賦值給變量useruser=raw_input("請(qǐng)輸入用戶名:")#將用戶輸入的內(nèi)容賦值給變量pwdpwd=raw_input("請(qǐng)輸入密碼:")#打印輸入的內(nèi)容p
系統(tǒng) 2019-09-27 17:37:51 1754
在語(yǔ)句Book.objects.all()中,objects是一個(gè)特殊的屬性,需要通過它查詢數(shù)據(jù)庫(kù)。在第5章,我們只是簡(jiǎn)要地說這是模塊的manager。現(xiàn)在是時(shí)候深入了解managers是什么和如何使用了。總之,模塊manager是一個(gè)對(duì)象,Django模塊通過它進(jìn)行數(shù)據(jù)庫(kù)查詢。每個(gè)Django模塊至少有一個(gè)manager,你可以創(chuàng)建自定義manager以定制數(shù)據(jù)庫(kù)訪問。下面是你創(chuàng)建自定義manager的兩個(gè)原因:增加額外的manager方法,和/或修ma
系統(tǒng) 2019-09-27 17:37:39 1754