-
兩大幸存者:Java與Python誰更勝一籌?
程序員在編程語言的選擇上或多或少都猶豫過,選擇時也會不自主地將客觀事實與主觀偏好相結合。過去十年,可供選擇的語言層出不窮,本文將重點縮小到20世紀90年代編程語言的兩大幸存者身上:Java和Python。 Python起源于一種腳本語言,它的語法體現了一種可讀性的理念,具有簡單而規則的界限,鼓勵簡潔和一致的代碼布局。Python的動態類型有助于代碼簡化和組合,是許多平臺的解釋性語言,成為眾多程序員編程首選的便攜式選項。 Python的參考實現(以C編寫,被稱為CPython)在許多平臺上可用,并…
-
Python入門之迭代,列表解析,生成器及文件操作
迭代器是訪問集合元素的一種方式,迭代器包含了__iter__()(返回迭代器對象本身)next()(返回迭代器的下一個元素)迭代器只能往前不會退后 以下類型支持迭代 序列類型:list,str,tuple 非序列類型:dict,file 自定義類 通過內建的函數iter()或對象自帶方法__iter__可以獲取迭代器對象 l1=range(5) iter1=iter(l1) print l1 <listiterator at 0x291cc90> 使用n…
-
python快速入門之數據類型
Python 是 90 年代初由 Guido Van Rossum 為了打發圣誕節而創建的語言。如今它已是當前最流行的程序語言之一. Python的關鍵要素有以下幾點:1.基本數據類型;2.對象引用;3.組合數據類型;4.邏輯操作符;5.控制流語句;6.算數操作符;7.輸入/輸出;8.函數的創建與調用 基本數據類型和操作符 一.數字型 1 + 1 = 2 2&n…
-
Python線程指南
本文介紹了Python對于線程的支持,包括“學會”多線程編程需要掌握的基礎以及Python兩個線程標準庫的完整介紹及使用示例。 注意:本文基于Python2.4完成,;如果看到不明白的詞匯請記得百度谷歌或維基,whatever。 尊重作者的勞動,轉載請注明作者及原文地址 >.< 1. 線程基礎 1.1. 線程狀態 線程有5種狀態,狀態轉換的過程如下圖所示: 1.2. 線程同步(鎖) 多線程的優勢在于可以同時運行多個任務(至少感覺起來是這樣)。但是當線程需要共享數據時,可能存在數據不同…
-
Python函數式編程指南(三):迭代器
這一篇我們將討論迭代器。迭代器并不是函數式編程特有的東西,但它仍然是函數式編程的一個重要的組成部分,或者說是一個重要的工具。 轉載請注明原作者和原文地址:) 3. 迭代器 3.1. 迭代器(Iterator)概述 迭代器是訪問集合內元素的一種方式。迭代器對象從集合的第一個元素開始訪問,直到所有的元素都被訪問一遍后結束。 迭代器不能回退,只能往前進行迭代。這并不是什么很大的缺點,因為人們幾乎不需要在迭代途中進行回退操作。 迭代器也不是線程安全的,在多線程環境中對可變集合使用迭代器是一個危險的操作。…
-
Python函數式編程指南(四):生成器
生成器是迭代器,同時也并不僅僅是迭代器,不過迭代器之外的用途實在是不多,所以我們可以大聲地說:生成器提供了非常方便的自定義迭代器的途徑。 這是函數式編程指南的最后一篇,似乎拖了一個星期才寫好,嗯…… 轉載請注明原作者和原文地址:) 4. 生成器(generator) 4.1. 生成器簡介 首先請確信,生成器就是一種迭代器。生成器擁有next方法并且行為與迭代器完全相同,這意味著生成器也可以用于Python的for循環中。另外,對于生成器的特殊語法支持使得編寫一個生成器比自定義一個常規的迭代器要簡…