A. python Python語句list(range(1,10,3))執行結果為___________________。([1, 4, 7])
Python語句list(range(1,10,3))執行結果為[1,4,7]。
語法是:range(start,stop[,step])
參數說明:
(1)start:計數從start開始,默認是從0開始。例如range(5)等價於range(0,5);
(2)stop:計數到stop結束,但不包括stop。例如:range(0,5)是[0,1,2,3,4]沒有5;
(3)step:步長,默認為1。例如:range(0,5)等價於range(0,5,1)。
因此,range(1,10,3)的意思是1到10之間的tuple,間隔為3,所以結果是(1,4,7)。
列表(List)是最常用的Python數據類型,它可以作為一個方括弧內的逗號分隔值出現。
所以,list(range(1,10,3))執行結果為[1,4,7]。
(1)pythongetheader擴展閱讀
Python列表函數&方法
Python包含以下函數:
1、cmp(list1, list2):比較兩個列表的元素;
2、len(list):列表元素個數;
3、max(list):返回列表元素最大值;
4、min(list):返回列表元素最小值;
5、list(seq):將元組轉換為列表。
Python包含以下方法:
1、list.append(obj):在列表末尾添加新的對象;
2、list.count(obj):統計某個元素在列表中出現的次數;
3、list.extend(seq):在列表末尾一次性追加另一個序列中的多個值(用新列表擴展原來的列表);
4、list.index(obj):從列表中找出某個值第一個匹配項的索引位置;
5、list.insert(index, obj):將對象插入列表;
6、list.pop([index=-1]):移除列表中的一個元素(默認最後一個元素),並且返回該元素的值;
7、list.remove(obj):移除列表中某個值的第一個匹配項;
8、list.reverse():反向列表中元素;
9、list.sort(cmp=None, key=None, reverse=False):對原列表進行排序。
B. python語言中sys.stdin有哪些方法(屬性函數)可以調用
>>> dir(sys.stdin)
['_CHUNK_SIZE', '__class__', '__delattr__', '__doc__', '__enter__', '__eq__', '
_exit__', '__format__', '__ge__', '__getattribute__', '__gt__', '__hash__', '__
nit__', '__iter__', '__le__', '__lt__', '__ne__', '__new__', '__next__', '__red
ce__', '__rece_ex__', '__repr__', '__setattr__', '__sizeof__', '__str__', '__
ubclasshook__', '_checkClosed', '_checkReadable', '_checkSeekable', '_checkWrit
ble', 'buffer', 'close', 'closed', 'detach', 'encoding', 'errors', 'fileno', 'f
ush', 'isatty', 'line_buffering', 'name', 'newlines', 'read', 'readable', 'read
ine', 'readlines', 'seek', 'seekable', 'tell', 'truncate', 'writable', 'write',
]
你用的IDLE?那東西是包裝過的的,那不是命令行里讀取了,直接用原生的stdin肯定是不行的。
C. python為什麼是人工智慧首選
1、人生苦短,我用Python:簡單、高效、易入門
在討論為什麼選擇Python之前我們首先得知道Python是個什麼東西。Python是一種面向對象、解釋型計算機程序設計語言。它的設計初衷就是優雅、明確、簡單。比起同樣是面向對象的java語言,函數、模塊、字元串、數字對於Python來說全都是對象,而不像Java中還有基本類型一說。
有些小夥伴可能要問了,Python作為腳本語言,運行速度沒有Java和c++快,為什麼還要選擇Python。
人工智慧的核心計算全是C語言寫好的底層,Python只是寫邏輯。不是說C語言寫不了上層邏輯,只是代碼量太大,開發效率低。運行速度可以通過硬體升級來提升,但是開發速度卻不能通過堆人手來提升。對於目前人工智慧的應用來說,快速開發比快速執行更有效。
2、Python具有豐富而強大的庫,昵稱膠水語言
上面我們提到人工智慧真正的計算是依靠於C語言來完成的。要想編寫人工智慧的邏輯,就需要一個從其他語言到C語言的借口,Python是門檻最低最容易的。而且Python在歷史上也一直充當著科學計算和數據分析的重要工具的角色,有numpy這樣的基礎庫既減少了開發的工作量,也方便從業人員上手。
3、python應用領域廣泛,上天支持航天航空系統開發,下至小游戲開發,幾乎無所不能。
Python是通用語言,什麼地方都可以用,不過最佳應用場景是那些追求開發速度而不太在乎運行效率的地方。
Python現在最大的應用是web後台,然後還有linux系統管理,各種平台下快速原型開發,小工具編寫,或者作為粘合語言來調度其他語言寫的東西。
這里我們簡單舉幾個例子。
①web應用開發
伺服器端編程,具有豐富的Web開發框架,如Django和TurboGears,快速完成一個網站的開發和Web服務。典型如國內的豆瓣、果殼網等;國外的Google、Dropbox等。
②系統網路運維
在運維的工作中,有大量重復性工作的地方,並需要做管理系統、監控系統、發布系統等,將工作自動化起來,提高工作效率,這樣的場景Python是一門非常合適的語言。
③3D游戲開發
Python有很好的3D渲染庫和游戲開發框架,有很多使用Python開發的游戲,如迪斯尼卡通城、黑暗之刃。常用PyGame、Pykyra等,對於想要進軍游戲行業的同學們,Python也是一個不錯的選擇。
4、2018IEEE Spectrum編程語言排行榜,Python徹底甩掉java,位居48種編程語言之首
Python不但雄踞第一,在綜合指數、用戶增速、就業優勢和開源語言單項中,全都霸佔榜首。開發人工智慧的人不一定都是非常專業的程序員,很多學術界和從事數據分析的人並不熟悉編程。如果說要選擇一門語言來入門編程,Python絕對是首選。
精簡了很多不必要的符號,便於閱讀理解,盡可能的接近自然語言,編程簡單直接,適合初學編程者。即使是非計算機專業的0基礎小白也可以分分鍾入門。這就是為什麼Python可以被這么多人選擇和喜愛的理由。
5、Python作為大中小教育編程語言首先入門語言,可謂上可直通人工智慧,下則對接初高中編程入門
Python作為一門編程語言,今年以來熱度和影響力持續上升,已經上升到了國家戰略的層面上。山東省在最新出版的小學信息技術六年級教材中加入了Python的內容;編程界也一直有傳言浙江省將對中學信息技術教材進行改動,VB已死,Python當立。
國家相關教育部門對於「人工智慧普及」格外重視,不僅將Python列入到小學、中學和高中等傳統教育體系中,並藉此為未來國家和社會發展奠定了人工智慧的人才培養基礎,逐步由底層向高層推動「全民學Python」,從而進一步實現人工智慧技術的推動和社會人才結構的更迭。
D. python中怎麼安裝pip
python中安裝pip的方法:1、進入官網下載get-pip.py文件,保存到Scripts目錄下;2、進入Scripts目錄,打開命令提示符;3、執行【python get-pip.py】命令,等待pip工具安裝完成即可。
具體步驟:
(推薦教程:Python入門教程)
首先進入官網,然後下載get-pip.py文件並保存到你所安裝的Python的Scripts目錄下;
然後進入Scripts目錄,並在該目錄進入cmd界面;
接著在命令行界面執行python get-pip.py命令,此時pip3工具就會自動安裝;
安裝成功之後執行python -m pip --version命令,檢查是否成功安裝了pip即可。
E. python代碼運行助手怎麼打開
python代碼運行助手是能在網頁上運行python語言的工具。因為python的運行環境在很多教程里都是用dos的,黑乎乎的界面看的有點簡陋,所以出了這python代碼運行助手,作為ide。
實際上,python代碼運行助手界面只能算及格分,如果要找ide,推薦使用jupyter。jupyter被集成到ANACONDA里,只要安裝了anacoda就能使用了。
回到這個問題:
1、要打開這運行助手首先要下載一個learning.py,如果找不到可以復制如下代碼另存為「learning.py」,編輯器用sublime、或者notepad++。
#!/usr/bin/envpython3
#-*-coding:utf-8-*-
r'''
learning.py
APython3tutorialfromhttp://www.liaoxuefeng.com
Usage:
python3learning.py
'''
importsys
defcheck_version():
v=sys.version_info
ifv.major==3andv.minor>=4:
returnTrue
print('Yourcurrentpythonis%d.%d.PleaseusePython3.4.'%(v.major,v.minor))
returnFalse
ifnotcheck_version():
exit(1)
importos,io,json,subprocess,tempfile
fromurllibimportparse
fromwsgiref.simple_serverimportmake_server
EXEC=sys.executable
PORT=39093
HOST='local.liaoxuefeng.com:%d'%PORT
TEMP=tempfile.mkdtemp(suffix='_py',prefix='learn_python_')
INDEX=0
defmain():
httpd=make_server('127.0.0.1',PORT,application)
print('ReadyforPythoncodeonport%d...'%PORT)
httpd.serve_forever()
defget_name():
globalINDEX
INDEX=INDEX+1
return'test_%d'%INDEX
defwrite_py(name,code):
fpath=os.path.join(TEMP,'%s.py'%name)
withopen(fpath,'w',encoding='utf-8')asf:
f.write(code)
print('Codewroteto:%s'%fpath)
returnfpath
defdecode(s):
try:
returns.decode('utf-8')
exceptUnicodeDecodeError:
returns.decode('gbk')
defapplication(environ,start_response):
host=environ.get('HTTP_HOST')
method=environ.get('REQUEST_METHOD')
path=environ.get('PATH_INFO')
ifmethod=='GET'andpath=='/':
start_response('200OK',[('Content-Type','text/html')])
return[b'<html><head><title>LearningPython</title></head><body><formmethod="post"action="/run"><textareaname="code"style="width:90%;height:600px"></textarea><p><buttontype="submit">Run</button></p></form></body></html>']
ifmethod=='GET'andpath=='/env':
start_response('200OK',[('Content-Type','text/html')])
L=[b'<html><head><title>ENV</title></head><body>']
fork,vinenviron.items():
p='<p>%s=%s'%(k,str(v))
L.append(p.encode('utf-8'))
L.append(b'</html>')
returnL
ifhost!=HOSTormethod!='POST'orpath!='/run'ornotenviron.get('CONTENT_TYPE','').lower().startswith('application/x-www-form-urlencoded'):
start_response('400BadRequest',[('Content-Type','application/json')])
return[b'{"error":"bad_request"}']
s=environ['wsgi.input'].read(int(environ['CONTENT_LENGTH']))
qs=parse.parse_qs(s.decode('utf-8'))
ifnot'code'inqs:
start_response('400BadRequest',[('Content-Type','application/json')])
return[b'{"error":"invalid_params"}']
name=qs['name'][0]if'name'inqselseget_name()
code=qs['code'][0]
headers=[('Content-Type','application/json')]
origin=environ.get('HTTP_ORIGIN','')
iforigin.find('.liaoxuefeng.com')==-1:
start_response('400BadRequest',[('Content-Type','application/json')])
return[b'{"error":"invalid_origin"}']
headers.append(('Access-Control-Allow-Origin',origin))
start_response('200OK',headers)
r=dict()
try:
fpath=write_py(name,code)
print('Execute:%s%s'%(EXEC,fpath))
r['output']=decode(subprocess.check_output([EXEC,fpath],stderr=subprocess.STDOUT,timeout=5))
exceptsubprocess.CalledProcessErrorase:
r=dict(error='Exception',output=decode(e.output))
exceptsubprocess.TimeoutExpiredase:
r=dict(error='Timeout',output='執行超時')
exceptsubprocess.CalledProcessErrorase:
r=dict(error='Error',output='執行錯誤')
print('Executedone.')
return[json.mps(r).encode('utf-8')]
if__name__=='__main__':
main()
2,再用一個記事本寫如下的代碼:
@echooff
pythonlearning.py
pause
另存為『運行.bat』
3、把「運行.bat」和「learning.py」放到同一目錄下,
F. python 中 如何查看類中的方法為什麼有些看不到呢
models.Manager
和
'models.Manager'
是一樣的嗎?
後者是一個字元串,你沒發現你用dir找到的方法全是字元串的方法嗎?
你開什麼玩笑
G. python一段小函數解釋
一般我們常見的網址後綴(suffix)是 cn,或者net,或者com,你說的就是域名的後綴列表
後面代碼就是用dot把域名分隔開,
比如www..com 被拆分成[ 『www','','com']
經過for循環後,到com的時候,進入if分支,而前面走的是else分支,所以可以看到sdomain的變化如下:
遇到www, sdomain包含['www']
遇到 sdomain被替換為['']
遇到com,走if分支,append,變成 ['','com']
然後join後就變成 .com
不過不知道這么些的理由,要是我,就用正則表達式,或者直接保留後面兩個部分
domain=url.split('.')
if domain[-1] in suffixs:
return string.join(domain[-2:],'.')
else:
return None #not valid domain
H. 如何用Python爬蟲獲取那些價值博文
過程大體分為以下幾步:
1. 找到爬取的目標網址;
2. 分析網頁,找到自已想要保存的信息,這里我們主要保存是博客的文章內容;
3. 清洗整理爬取下來的信息,保存在本地磁碟。
打開csdn的網頁,作為一個示例,我們隨機打開一個網頁:
http://blog.csdn.net/u013088062/article/list/1。
可以看到,博主對《C++卷積神經網路》和其它有關機計算機方面的文章都寫得不錯。
1#-*-coding:UTF-8-*-
2importre
3importurllib2
4importsys
5#目的:讀取博客文章,記錄標題,用Htnl格式保存存文章內容
6#版本:python2.7.13
7#功能:讀取網頁內容
8classGetHtmlPage():
9#注意大小寫
10def__init__(self,strPage):
11self.strPapge=strPage
12#獲取網頁
13defGetPage(self):
14req=urllib2.Request(self.strPapge)#建立頁面請求
15rep=req.add_header("User-Agent","Mozilla/5.0(WindowsNT6.1;WOW64)AppleWebKit/537.36(KHTML,likeGecko)Chrome/38.0.2125.122Safari/537.36SE2.XMetaSr1.0")
16try:
17cn=urllib2.urlopen(req)#網頁請求
18page=cn.read()#讀網頁
19uPage=page.decode("utf-8")#網頁編碼
20cn.close()
21returnuPage
22excepturllib2.URLError,e:#捕獲異常
23print'URLError:',e.code
24return
25excepturllib2.HTTPError,e:#捕獲異常
26print'HTTPError:'+e.reason
27return
28returnrePage
29#正則表達式,獲取想要的內容
30classRePage():
31#正則表達式提取內容,返回鏈表
32defGetReText(self,page,recode):
33rePage=re.findall(recode,page,re.S)
34returnrePage
35#保存文本
36classSaveText():
37defSave(self,text,tilte):
38try:
39t="blog\"+tilte+".html"
40f=file(t,"a")
41f.write(text)
42f.close()
43exceptIOError,e:
44printe.message
45if__name__=="__main__":
46s=SaveText()
47#文件編碼
48#字元正確解碼
49reload(sys)
50sys.setdefaultencoding("utf-8")#獲得系統的默認編碼
51#獲取網頁
52page=GetHtmlPage("http://blog.csdn.net/u013088062/article/list/1")
53htmlPage=page.GetPage()
54#提取內容
55reServer=RePage()
56reBlog=reServer.GetReText(htmlPage,r'.*?(s.+?)')#獲取網址鏈接和標題
57#再向下獲取正文
58forrefinreBlog:
59pageHeard="http://blog.csdn.net/"#加鏈接頭
60strPage=pageHeard+ref[0]
61tilte=ref[1].replace('[置頂]',"")#用替換的功能去除雜的英文
62tilte=tilte.replace("
","").lstrip().rstrip()
63#獲取正文
64htmlPage=GetHtmlPage(strPage)
65htmlPageData=htmlPage.GetPage()
66reBlogText=reServer.GetReText(htmlPageData,'(.+?)')
67#保存文件
68fors1inreBlogText:
69s1='
'+s1
70s.Save(s1,tilte)
I. python編程 驗證「哥德巴赫猜想」
defisprime(x):
ifx==2:returnTrue
ifx%2==0:returnFalse
n=3
whilen*n<=x:
ifx%n==0:returnFalse
n+=2
returnTrue
defgedb(x):
ifx<4orx%2!=0:
print("輸入的數據不正確,應該是大於或等於4的偶數")
return
ifx==4:
print('4=2+2')
return
forninrange(3,x,2):
ifisprime(n)andisprime(x-n):
print(x,'=',n,'+',x-n)
return
defmain():
x=int(input("輸入大於或等於4的偶數"))
gedb(x)
main()
J. 如何轉行Python人工智慧
一、Python是解釋語言,程序寫起來非常方便
寫程序方便對做機器學習的人很重要。 因為經常需要對模型進行各種各樣的修改,這在編譯語言里很可能是牽一發而動全身的事情,Python里通常可以用很少的時間實現。舉例來說,在C等編譯語言里寫一個矩陣乘法,需要自己分配操作數(矩陣)的內存、分配結果的內存、手動對BLAS介面調用gemm、最後如果沒用smart pointer還得手動回收內存空間。Python幾乎就是import numpy; numpy.dot兩句話的事。
當然現在很多面向C/C++庫已經支持託管的內存管理了,這也讓開發過程容易了很多,但解釋語言仍然有天生的優勢——不需要編譯時間。這對機器學習這種需要大量prototyping和迭代的研究方向是非常有益工作效率的。
二、Python的開發生態成熟,有很多有用的庫可以用
Python靈活的語法還使得包括文本操作、list/dict comprehension等非常實用的功能非常容易高效實現(編寫和運行效率都高),配合lambda等使用更是方便。這也是Python良性生態背後的一大原因。相比而言,Lua雖然也是解釋語言,甚至有LuaJIT這種神器加持,但其本身很難做到Python這樣,一是因為有Python這個前輩佔領著市場份額,另一個也因為它本身種種反常識的設計(比如全局變數)。不過借著Lua-Python bridge和Torch的東風,Lua似乎也在寄生興起。
三、Python效率超高
解釋語言的發展已經大大超過許多人的想像。很多比如list comprehension的語法糖都是貼近內核實現的。除了JIT之外,還有Cython可以大幅增加運行效率。最後,得益於Python對C的介面,很多像gnumpy, theano這樣高效、Python介面友好的庫可以加速程序的運行,在強大團隊的支撐下,這些庫的效率可能比一個不熟練的程序員用C寫一個月調優的效率還要高。
未來十年Python語言的發展前景形勢一片大好,毫無疑問使用Python語言的企業將會越來越多,Python程序猿的人才缺口也將越來越大,認准時機,把握機遇,Python全棧開發工程師、Python開發工程師、自動化開發工程師、Linux運維工程師、Python爬蟲開發工程師、前端開發工程師、大數據分析和數據挖掘等熱門職位等你來選。
一、Python是解釋語言,程序寫起來非常方便
寫程序方便對做機器學習的人很重要。 因為經常需要對模型進行各種各樣的修改,這在編譯語言里很可能是牽一發而動全身的事情,Python里通常可以用很少的時間實現。舉例來說,在C等編譯語言里寫一個矩陣乘法,需要自己分配操作數(矩陣)的內存、分配結果的內存、手動對BLAS介面調用gemm、最後如果沒用smart pointer還得手動回收內存空間。Python幾乎就是import numpy; numpy.dot兩句話的事。
當然現在很多面向C/C++庫已經支持託管的內存管理了,這也讓開發過程容易了很多,但解釋語言仍然有天生的優勢——不需要編譯時間。這對機器學習這種需要大量prototyping和迭代的研究方向是非常有益工作效率的。
二、Python的開發生態成熟,有很多有用的庫可以用
Python靈活的語法還使得包括文本操作、list/dict comprehension等非常實用的功能非常容易高效實現(編寫和運行效率都高),配合lambda等使用更是方便。這也是Python良性生態背後的一大原因。相比而言,Lua雖然也是解釋語言,甚至有LuaJIT這種神器加持,但其本身很難做到Python這樣,一是因為有Python這個前輩佔領著市場份額,另一個也因為它本身種種反常識的設計(比如全局變數)。不過借著Lua-Python bridge和Torch的東風,Lua似乎也在寄生興起。
三、Python效率超高
解釋語言的發展已經大大超過許多人的想像。很多比如list comprehension的語法糖都是貼近內核實現的。除了JIT之外,還有Cython可以大幅增加運行效率。最後,得益於Python對C的介面,很多像gnumpy, theano這樣高效、Python介面友好的庫可以加速程序的運行,在強大團隊的支撐下,這些庫的效率可能比一個不熟練的程序員用C寫一個月調優的效率還要高。
未來十年Python語言的發展前景形勢一片大好,毫無疑問使用Python語言的企業將會越來越多,Python程序猿的人才缺口也將越來越大,認准時機,把握機遇,Python全棧開發工程師、Python開發工程師、自動化開發工程師、Linux運維工程師、Python爬蟲開發工程師、前端開發工程師、大數據分析和數據挖掘等熱門職位等你來選。