第五章:函數(shù)和代碼復(fù)用

A蚤氏、函數(shù)的基本使用


1.函數(shù)的定義

函數(shù)是一段具有特定功能的、可重用的語(yǔ)句組,用函數(shù)名來(lái)表示仙逻,并通過(guò)函數(shù)名進(jìn)行功能調(diào)用服鹅。

函數(shù)也可以看作是一段具有名字的子程序,可以在需要的地方調(diào)用執(zhí)行杈绸,不需要在每個(gè)執(zhí)行地方重復(fù)編寫(xiě)這些語(yǔ)句帖蔓。

每次使用函數(shù)可以提供不同的參數(shù)作為輸入,以實(shí)現(xiàn)對(duì)不同數(shù)據(jù)的處理瞳脓。

函數(shù)執(zhí)行后塑娇,還可以反饋相應(yīng)的處理結(jié)果。

函數(shù)是一種功能抽象(類(lèi)似黑盒)劫侧。

? ??使用函數(shù)的目的

? ??降低編程難度

? ??代碼重用


函數(shù)的使用:

函數(shù)定義

Python安裝包自帶的函數(shù):

????Python內(nèi)置函數(shù)(abs()埋酬、eval()、input())

????Python標(biāo)準(zhǔn)庫(kù)中的函數(shù)(math.sqrt())

自定義函數(shù)(用戶(hù)自己編寫(xiě))

函數(shù)調(diào)用


自定義函數(shù)

Python定義一個(gè)函數(shù)使用def保留字:

自定義函數(shù)


函數(shù)定義時(shí)烧栋,所指定的參數(shù)是一種占位符

函數(shù)定義后写妥,如果不經(jīng)過(guò)調(diào)用,不會(huì)被執(zhí)行

函數(shù)定義時(shí)审姓,參數(shù)是輸入珍特,函數(shù)體是處理,結(jié)果是輸出(IPO)

函數(shù)名:任何有效的Python標(biāo)識(shí)符

參數(shù)列表:調(diào)用函數(shù)時(shí)給它的值

????????參數(shù)個(gè)數(shù)>=0

????????多個(gè)參數(shù)用 , 分隔

形式參數(shù)(形參):定義函數(shù)時(shí)使用魔吐,只在函數(shù)內(nèi)部有用扎筒。

實(shí)際參數(shù)(實(shí)參):調(diào)用函數(shù)時(shí)使用莱找。可以是常量嗜桌、變量奥溺、表達(dá)式、函數(shù)骨宠。

函數(shù)體:函數(shù)被調(diào)用時(shí)執(zhí)行的代碼

return語(yǔ)句

????結(jié)束函數(shù)調(diào)用谚赎,并將結(jié)果返回給調(diào)用者

????可選

????可以出現(xiàn)在函數(shù)體的任意位置

????如果沒(méi)有return語(yǔ)句,函數(shù)在函數(shù)體結(jié)束位置將控制權(quán)返回給調(diào)用方

函數(shù)接口:返回值和參數(shù)

函數(shù)傳遞信息的途徑

????通過(guò)函數(shù)返回值的方式傳遞信息

????通過(guò)參數(shù)傳遞信息

實(shí)例:生日歌

過(guò)生日時(shí)要為朋友唱生日歌诱篷,歌詞為:

Happy birthday to you!

Happy birthday to you!

Happy birthday, dear <名字>

Happy birthday to you!

要求:編寫(xiě)程序?yàn)镸ike和Lily輸出生日歌壶唤。

最簡(jiǎn)單的實(shí)現(xiàn)方法是重復(fù)使用print()語(yǔ)句

生日歌

2.函數(shù)調(diào)用的過(guò)程

程序調(diào)用一個(gè)函數(shù)需要執(zhí)行以下四個(gè)步驟:

(1)調(diào)用程序在調(diào)用處暫停執(zhí)行棕所;

(2)在調(diào)用時(shí)闸盔,將實(shí)參復(fù)制給函數(shù)的形參;

(3)執(zhí)行函數(shù)體語(yǔ)句琳省;

(4)函數(shù)調(diào)用結(jié)束給出返回值(return)迎吵,程序回到調(diào)用前的暫停處繼續(xù)執(zhí)行。


3.lambda函數(shù)

Python有33個(gè)保留字针贬,其中一個(gè)是lambda击费,用于定義一種特殊的函數(shù) — 匿名函數(shù),又稱(chēng)lambda函數(shù)桦他。

匿名函數(shù)并非沒(méi)有名字蔫巩,而是將函數(shù)名作為函數(shù)結(jié)果返回,如下:

<函數(shù)名> =

lambda <參數(shù)列表>: <表達(dá)式>

lambda函數(shù)與正常函數(shù)一樣快压,等價(jià)于下面形式:

def <函數(shù)名>(<參數(shù)列表>):

????return <表達(dá)式>

簡(jiǎn)單說(shuō)圆仔,lambda函數(shù)用于定義簡(jiǎn)單的、能夠在一行內(nèi)表示的函數(shù)蔫劣,返回一個(gè)函數(shù)類(lèi)型坪郭。

舉例

謹(jǐn)慎使用lambda函數(shù)

lambda函數(shù)主要用作一些特定函數(shù)或方法的參數(shù)

lambda函數(shù)有一些固定的使用方式,建議逐步掌握

一般情況下脉幢,建議使用def定義普通函數(shù)


B歪沃、函數(shù)的參數(shù)傳遞


1.函數(shù)的參數(shù)

????函數(shù)的形參、實(shí)參嫌松。

????函數(shù)可以定義可選參數(shù)沪曙,使用參數(shù)的位置或者名稱(chēng)傳遞參數(shù)值。

????根據(jù)函數(shù)中變量的不同作用域有不同的函數(shù)返回值方式豆瘫。


2.可選參數(shù)和可變數(shù)量參數(shù)

在定義函數(shù)時(shí)珊蟀,有些參數(shù)可以存在默認(rèn)值

參數(shù)可以存在默認(rèn)值

在函數(shù)定義時(shí),可以設(shè)計(jì)可變數(shù)量參數(shù)

????通過(guò)參數(shù)前增加星號(hào)(*)實(shí)現(xiàn)

????必須放在參數(shù)列表的最后

????調(diào)用時(shí),這些參數(shù)被當(dāng)做元組類(lèi)型傳遞到函數(shù)

舉例

3. 參數(shù)的位置和名稱(chēng)傳遞

????函數(shù)調(diào)用時(shí)育灸,默認(rèn)將實(shí)參按照位置順序傳遞給函數(shù)

????例如:func(x1,y1,z1,x2,y2,z2)

???????????????????? return

? ?實(shí)際調(diào)用:result=func(1,2,3,4,5,6)

????可讀性差

????提供了按照形參名稱(chēng)輸入實(shí)參的方式腻窒,調(diào)用如下

????result=func(x2=4, y2=5, z2=6, x1=1, y1=2,z1=3)

由于調(diào)用函數(shù)時(shí)指定了參數(shù)名稱(chēng),所以參數(shù)之間的順序可以任意調(diào)整磅崭。


4. 函數(shù)的返回值

????return語(yǔ)句用來(lái)退出函數(shù)儿子,并將程序返回到函數(shù)被調(diào)用的位置繼續(xù)執(zhí)行。

????return語(yǔ)句同時(shí)可以將0個(gè)砸喻、1個(gè)或多個(gè)函數(shù)運(yùn)算完的結(jié)果返回給函數(shù)被調(diào)用處的變量柔逼,例如:

返回值

函數(shù)可以沒(méi)有return,此時(shí)函數(shù)并不返回值割岛,等價(jià)于return none愉适。

沒(méi)有return
舉例

用return返回多個(gè)值,也可以根據(jù)多返回值的順序進(jìn)行賦值癣漆。

return返回多個(gè)值??
舉例

返回值可以是一個(gè)變量维咸,也可以是一個(gè)表達(dá)式

表達(dá)式

5. 函數(shù)對(duì)變量的作用

函數(shù)通過(guò)參數(shù)與調(diào)用程序傳遞信息。

函數(shù)的形參值接收了實(shí)參的值惠爽,給形參賦值不影響實(shí)參癌蓖。

Python通過(guò)值來(lái)傳遞參數(shù)

一個(gè)程序中的變量包括兩類(lèi):

局部變量指在函數(shù)內(nèi)部使用的變量婚肆,僅在函數(shù)內(nèi)部有效租副,當(dāng)函數(shù)退出時(shí)變量將不存在。

全局變量指在函數(shù)之外定義的變量较性,一般沒(méi)有縮進(jìn)用僧,在程序執(zhí)行全過(guò)程有效。

全局變量

原因:當(dāng)函數(shù)執(zhí)行完退出后两残,其內(nèi)部變量將被釋放永毅。

如果函數(shù)內(nèi)部使用了全局變量呢?

局部變量

函數(shù)func()內(nèi)部使用了變量n人弓,并且將變量參數(shù)b賦值給變量n,為何全局變量n值沒(méi)有改變着逐?

如果希望讓func()函數(shù)將n當(dāng)作全局變量崔赌,需要在變量n使用前顯式聲明該變量為全局變量

全局變量

如果全局變量不是整數(shù)n耸别,而是列表類(lèi)型ls健芭,會(huì)怎么樣呢?

列表類(lèi)型ls

如果func()函數(shù)內(nèi)部存在一個(gè)真實(shí)創(chuàng)建過(guò)且名稱(chēng)為ls的列表秀姐,則func()將操作該列表而不會(huì)修改全局變量慈迈。

ls的列表是否改變

Python函數(shù)對(duì)變量的作用遵守如下原則:

????????簡(jiǎn)單數(shù)據(jù)類(lèi)型變量無(wú)論是否與全局變量重名,僅在函數(shù)內(nèi)部創(chuàng)建和使用,函數(shù)退出后變量被釋放痒留;

????????簡(jiǎn)單數(shù)據(jù)類(lèi)型變量在用global保留字聲明后谴麦,作為全局變量;

????????對(duì)于組合數(shù)據(jù)類(lèi)型的全局變量伸头,如果在函數(shù)內(nèi)部沒(méi)有被真實(shí)創(chuàng)建的同名變量匾效,則函數(shù)內(nèi)部可直接使用并修改全局變量的值;

????????如果函數(shù)內(nèi)部真實(shí)創(chuàng)建了組合數(shù)據(jù)類(lèi)型變量恤磷,無(wú)論是否有同名全局變量面哼,函數(shù)僅對(duì)局部變量進(jìn)行操作。


C扫步、datetime庫(kù)的使用


引入模塊

from datetime import datetime

1.datetime庫(kù)概述

以不同格式顯示日期和時(shí)間是程序中最常用到的功能魔策。

Python提供了一個(gè)處理時(shí)間的標(biāo)準(zhǔn)函數(shù)庫(kù)datetime,它提供了一系列由簡(jiǎn)單到復(fù)雜的時(shí)間處理方法河胎。datetime庫(kù)可以從系統(tǒng)中獲得時(shí)間代乃,并以用戶(hù)選擇的格式輸出。

datetime庫(kù)億格林威治時(shí)間為基礎(chǔ)仿粹。

每天劃分為3600×24秒搁吓。

兩個(gè)常量:datetime.MINYEAR(=1) 和datetime.MAXYEAR (=9999)。

datetime庫(kù)以類(lèi)的方式提供多種日期和時(shí)間表達(dá)方式

datetime.date:日期表示類(lèi)吭历,表示年堕仔、月、日等

datetime.time:時(shí)間表示類(lèi)晌区,表示小時(shí)摩骨、分鐘、秒朗若、毫秒等

datetime.datetime:日期和時(shí)間表示的類(lèi)恼五,功能覆蓋date和time類(lèi)

datetime.timedelta:時(shí)間間隔有關(guān)的類(lèi)

datetime.tzinfo:與時(shí)區(qū)有關(guān)的信息表示類(lèi)


2.datetime庫(kù)解析

使用datetime.now()獲得當(dāng)前日期和時(shí)間對(duì)象

作用:返回一個(gè)datetime類(lèi)型,表示當(dāng)前的日期和時(shí)間哭懈,精確到微秒灾馒。

例子

使用datetime.utcnow()獲得當(dāng)前日期和時(shí)間對(duì)應(yīng)的UTC(世界標(biāo)準(zhǔn)時(shí)間)時(shí)間對(duì)象,使用方法如下:

datetime.utcnow()

作用:返回datetime類(lèi)型遣总,表示當(dāng)前日期和時(shí)間的UTC表示睬罗,精確到微秒。

例子

datetime.now()和datetime.utcnow()都返回一個(gè)datetime類(lèi)型的對(duì)象旭斥,也可以直接使用datetime()構(gòu)造一個(gè)日期和時(shí)間對(duì)象容达,使用方法如下:

datetime(year, month, day, hour=0,

minute=0,second=0, microsecond=0)

作用:返回一個(gè)datetime類(lèi)型,表示指定的日期和時(shí)間垂券,可以精確到微秒花盐。

調(diào)用datetime()函數(shù)直接創(chuàng)建一個(gè)datetime對(duì)象,表示2018年4月16日22:33,32秒7微秒算芯,執(zhí)行結(jié)果如下:

例子

程序已經(jīng)有了一個(gè)datetime對(duì)象柒昏,進(jìn)一步可以利用這個(gè)對(duì)象的屬性顯示時(shí)間,為了區(qū)別datetime庫(kù)名也祠,采用上例中的someday代替生成的datetime對(duì)象

方法

datetime對(duì)象有3個(gè)常用的時(shí)間格式化方法昙楚,如表所示:

方法

isoformat()和isoweekday()方法的使用如下:

舉例

strftime()方法是時(shí)間格式化最有效的方法,幾乎可以以任何通用格式輸出時(shí)間

方法

strftime()格式化字符串的數(shù)字左側(cè)會(huì)自動(dòng)補(bǔ)零诈嘿,上述格式也可以與print()的格式化函數(shù)一起使用

舉例


D堪旧、七段數(shù)碼管繪制


1.七段數(shù)碼管繪制

七段數(shù)碼管(seven-segment indicator)由7段數(shù)碼管拼接而成,每段有亮或不亮兩種情況奖亚,改進(jìn)型的七段數(shù)碼管還包括一個(gè)小數(shù)點(diǎn)位置淳梦。

七段數(shù)碼管

七段數(shù)碼管能形成27=128種不同狀態(tài),其中部分狀態(tài)能夠顯示易于人們理解的數(shù)字或字母含義昔字,因此被廣泛使用爆袍。下圖給出了十六進(jìn)制中16個(gè)字符的七段數(shù)碼管表示。

16個(gè)字符的七段數(shù)碼管表示

要求:

用程序繪制七段數(shù)碼管作郭。

用程序繪制七段數(shù)碼管

基本思路:

繪制單個(gè)數(shù)字對(duì)應(yīng)的數(shù)碼管

獲得一串?dāng)?shù)字陨囊,繪制對(duì)應(yīng)的數(shù)碼管

獲得當(dāng)前系統(tǒng)時(shí)間,繪制對(duì)應(yīng)的數(shù)碼管


每個(gè)0到9的數(shù)字都有相同的七段數(shù)碼管樣式夹攒,因此蜘醋,可以通過(guò)設(shè)計(jì)函數(shù)復(fù)用數(shù)字的繪制過(guò)程

進(jìn)一步咏尝,每個(gè)七段數(shù)碼管包括7個(gè)數(shù)碼管樣式压语,除了數(shù)碼管位置不同外,繪制風(fēng)格一致编检,也可以通過(guò)函數(shù)復(fù)用單個(gè)數(shù)碼段的繪制過(guò)程胎食。

步驟1:繪制單個(gè)數(shù)字對(duì)應(yīng)的數(shù)碼管

七段數(shù)碼管有7個(gè)基本線(xiàn)條組成

七段數(shù)碼管可以有固定順序

不同數(shù)字顯示不同的線(xiàn)條

?

E、代碼的復(fù)用和模塊化設(shè)計(jì)


1.代碼的復(fù)用

把代碼當(dāng)做資源進(jìn)行抽象

代碼資源化:程序代碼是一種用來(lái)表達(dá)計(jì)算的“資源”允懂。

代碼抽象化:使用函數(shù)等方法對(duì)代碼賦予更高級(jí)別的定義厕怜。

代碼復(fù)用:同一份代碼在需要的時(shí)候可以被重復(fù)使用 –– 首先要對(duì)代碼進(jìn)行抽象

函數(shù) 對(duì)象 是代碼復(fù)用的兩種主要形式

函數(shù):將代碼命名在代碼層面建立了初步的抽象。

對(duì)象:屬性和方法

<a>.<b>和.()

在函數(shù)之上再次組織進(jìn)行抽象

函數(shù)是程序的一種基本抽象方式累驮,它將一系列代碼組織起來(lái)通過(guò)命名供其他程序使用酣倾。

函數(shù)封裝的直接好處是代碼復(fù)用,任何其他代碼只要輸入?yún)?shù)即可調(diào)用函數(shù)谤专,從而避免相同功能代碼在被調(diào)用處重復(fù)編寫(xiě)。

代碼復(fù)用產(chǎn)生了另一個(gè)好處午绳,當(dāng)更新函數(shù)功能時(shí)置侍,所有被調(diào)用處的功能都被更新(更新便利)。

當(dāng)程序的長(zhǎng)度在百行以上,如果不劃分模塊蜡坊,就算是最好的程序員也很難理解程序含義杠输,程序的可讀性就已經(jīng)很糟糕了。

最好解決方法:將一個(gè)程序分割成短小的程序段秕衙,每一段程序完成一個(gè)小的功能蠢甲。

無(wú)論面向過(guò)程和面向?qū)ο缶幊蹋瑢?duì)程序合理劃分功能模塊并基于模塊設(shè)計(jì)程序是一種常用方法据忘,被稱(chēng)為“模塊化設(shè)計(jì)”鹦牛。

2. 模塊化設(shè)計(jì)

模塊化設(shè)計(jì)的核心:分而治之

通過(guò)函數(shù)或者對(duì)象封裝,將程序劃分為模塊和模塊之間的表達(dá)

具體包括:主程序勇吊、子程序和子程序間關(guān)系

子程序:模塊

主程序:模塊間的關(guān)系

分而治之:一種分而治之曼追、分層抽象、體系化的設(shè)計(jì)思想

模塊化設(shè)計(jì)一般有兩個(gè)基本要求

緊耦合:兩個(gè)部分的交流很多汉规,無(wú)法獨(dú)立存在礼殊。

松耦合:兩個(gè)部分的交流較少,有清晰簡(jiǎn)單的接口针史,可以獨(dú)立存在晶伦。

一般來(lái)說(shuō),完成特定功能或被經(jīng)常復(fù)用的一組語(yǔ)句應(yīng)該采用函數(shù)來(lái)封裝啄枕,并盡可能減少函數(shù)間參數(shù)和返回值的數(shù)量婚陪,這樣復(fù)用的可能性越高。

盡可能合理劃分功能塊射亏,功能塊內(nèi)部耦合緊密--緊耦合近忙;

模塊間關(guān)系盡可能簡(jiǎn)單,功能塊之間耦合度低--松耦合智润。


F及舍、函數(shù)的遞歸


遞歸的定義

函數(shù)作為一種代碼封裝,可以被其他程序調(diào)用窟绷,當(dāng)然锯玛,也可以被函數(shù)內(nèi)部代碼調(diào)用。這種函數(shù)定義中調(diào)用函數(shù)自身的方式稱(chēng)為遞歸兼蜈。就像一個(gè)人站在裝滿(mǎn)鏡子的房間中攘残,看到的影像就是遞歸的結(jié)果。

遞歸在數(shù)學(xué)和計(jì)算機(jī)應(yīng)用上非常強(qiáng)大为狸,能夠非常簡(jiǎn)潔的解決重要問(wèn)題歼郭。

遞歸

遞歸不是循環(huán)

階乘的例子揭示了遞歸的兩個(gè)關(guān)鍵特征

?(1)存在一個(gè)或多個(gè)基例,基例不需要再次遞歸辐棒,它是確定的表達(dá)式病曾;

?(2)計(jì)算出存在的遞歸鏈牍蜂,所有遞歸鏈要以一個(gè)或多個(gè)基例結(jié)尾。

類(lèi)似數(shù)學(xué)歸納法

?(1)證明當(dāng)n 取第一個(gè)值的時(shí)候泰涂,命題成立

?(2)假設(shè)當(dāng)nk 時(shí)命題成立鲫竞,證明當(dāng)n=nk+1時(shí)命題也成立

?(3)遞歸是數(shù)學(xué)歸納法思維在編程中的體現(xiàn)


遞歸的使用方法

實(shí)例:階乘的計(jì)算。

舉例

分析

利用函數(shù)+分支語(yǔ)句實(shí)現(xiàn)上述代碼逼蒙。

遞歸本身是一個(gè)函數(shù)从绘,需要以函數(shù)定義方式描述

函數(shù)內(nèi)部,采用分支語(yǔ)句對(duì)輸入?yún)?shù)進(jìn)行判斷

基例和遞歸鏈是牢,分別編寫(xiě)對(duì)應(yīng)的代碼僵井。?????

?

注意:

構(gòu)造遞歸函數(shù),需要基例

基例不進(jìn)行遞歸妖泄,否則遞歸就會(huì)無(wú)限循環(huán)執(zhí)行

此遞歸調(diào)用以字符串形式執(zhí)行驹沿,應(yīng)設(shè)置基例為空串


F、科赫曲線(xiàn)繪制


科赫曲線(xiàn)

高大上的分形幾何

分形幾何是一種迭代的幾何圖形蹈胡,廣泛存在于自然界中渊季。(整體與局部有很強(qiáng)的相似性。)

科赫(Koch)曲線(xiàn)

在眾多經(jīng)典數(shù)學(xué)曲線(xiàn)中非常著名罚渐,由瑞典數(shù)學(xué)家馮·科赫(H·V·Koch)于1904年提出却汉,由于其形狀類(lèi)似雪花,也被稱(chēng)為雪花曲線(xiàn)荷并。

科赫曲線(xiàn)的基本概念和繪制方法如下:

正整數(shù)n代表科赫曲線(xiàn)的階數(shù)合砂,表示生成科赫曲線(xiàn)過(guò)程的操作次數(shù)。

科赫曲線(xiàn)初始化階數(shù)為0源织,表示一個(gè)長(zhǎng)度為L(zhǎng)的直線(xiàn)翩伪。

對(duì)于直線(xiàn)L,將其等分為三段谈息,中間一段用邊長(zhǎng)為L/3的等邊三角形的兩個(gè)邊替代缘屹,得到1階科赫曲線(xiàn),它包含四條線(xiàn)段侠仇。

進(jìn)一步對(duì)每條線(xiàn)段重復(fù)同樣的操作后得到2階科赫曲線(xiàn)轻姿。繼續(xù)重復(fù)同樣的操作n次可以得到n階科赫曲線(xiàn)

科赫曲線(xiàn)

科赫曲線(xiàn)屬于分形幾何分支逻炊,它的繪制過(guò)程體現(xiàn)了遞歸思想互亮。

????????遞歸思想:函數(shù)+分支

????????遞歸鏈條:線(xiàn)段的組合

????????遞歸基例:初始線(xiàn)段

代碼
結(jié)果

雪花效果:科赫曲線(xiàn)的組合

代碼
結(jié)果


G、Python內(nèi)置函數(shù)


Python解釋器提供了68個(gè)內(nèi)置函數(shù)余素,其中豹休,前36個(gè)已經(jīng)將結(jié)果,需要掌握桨吊。

內(nèi)置函數(shù)


H慕爬、PyInstaller庫(kù)基本介紹


需求:將python源代碼(.py)轉(zhuǎn)化為無(wú)需源代碼的可執(zhí)行文件窑眯。即:以可執(zhí)行文件的方式執(zhí)行一段程序屏积,從而可以在未安裝python IDLE和解釋器的電腦上運(yùn)行医窿。

需要將源程序編譯或者打包成一個(gè)直接可以執(zhí)行的程序。

過(guò)程

PyInstaller是第三方庫(kù)

官方網(wǎng)站:

?????? http://http://www.pyinstaller.org/

第三方庫(kù):使用前需要額外安裝

安裝第三方庫(kù)需要使用pip工具(使用cmd)

使用cmd命令行

?????? pip

install pyinstaller

安裝需要連接互聯(lián)網(wǎng)

安裝pyInstaller庫(kù)后炊林,會(huì)生成一個(gè)pyInstaller程序(命令)姥卢,用于將源文件打包,生成可執(zhí)行文件渣聚。

使用命令行(cmd)独榴,因?yàn)閜yinstaller是命令行的執(zhí)行程序,而不是python下面的執(zhí)行指令奕枝。

?????? pyinstaller–F <文件名.py>

舉例
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末棺榔,一起剝皮案震驚了整個(gè)濱河市,隨后出現(xiàn)的幾起案子隘道,更是在濱河造成了極大的恐慌症歇,老刑警劉巖,帶你破解...
    沈念sama閱讀 206,839評(píng)論 6 482
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件谭梗,死亡現(xiàn)場(chǎng)離奇詭異忘晤,居然都是意外死亡,警方通過(guò)查閱死者的電腦和手機(jī)激捏,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,543評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門(mén)设塔,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái),“玉大人远舅,你說(shuō)我怎么就攤上這事闰蛔。” “怎么了图柏?”我有些...
    開(kāi)封第一講書(shū)人閱讀 153,116評(píng)論 0 344
  • 文/不壞的土叔 我叫張陵序六,是天一觀(guān)的道長(zhǎng)。 經(jīng)常有香客問(wèn)我爆办,道長(zhǎng)难咕,這世上最難降的妖魔是什么? 我笑而不...
    開(kāi)封第一講書(shū)人閱讀 55,371評(píng)論 1 279
  • 正文 為了忘掉前任距辆,我火速辦了婚禮余佃,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘跨算。我一直安慰自己爆土,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,384評(píng)論 5 374
  • 文/花漫 我一把揭開(kāi)白布诸蚕。 她就那樣靜靜地躺著步势,像睡著了一般氧猬。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上坏瘩,一...
    開(kāi)封第一講書(shū)人閱讀 49,111評(píng)論 1 285
  • 那天盅抚,我揣著相機(jī)與錄音,去河邊找鬼倔矾。 笑死妄均,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的哪自。 我是一名探鬼主播丰包,決...
    沈念sama閱讀 38,416評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開(kāi)眼,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼壤巷!你這毒婦竟也來(lái)了邑彪?” 一聲冷哼從身側(cè)響起,我...
    開(kāi)封第一講書(shū)人閱讀 37,053評(píng)論 0 259
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤胧华,失蹤者是張志新(化名)和其女友劉穎寄症,沒(méi)想到半個(gè)月后,有當(dāng)?shù)厝嗽跇?shù)林里發(fā)現(xiàn)了一具尸體撑柔,經(jīng)...
    沈念sama閱讀 43,558評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡瘸爽,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 36,007評(píng)論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了铅忿。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片剪决。...
    茶點(diǎn)故事閱讀 38,117評(píng)論 1 334
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖檀训,靈堂內(nèi)的尸體忽然破棺而出柑潦,到底是詐尸還是另有隱情,我是刑警寧澤峻凫,帶...
    沈念sama閱讀 33,756評(píng)論 4 324
  • 正文 年R本政府宣布渗鬼,位于F島的核電站,受9級(jí)特大地震影響荧琼,放射性物質(zhì)發(fā)生泄漏譬胎。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,324評(píng)論 3 307
  • 文/蒙蒙 一命锄、第九天 我趴在偏房一處隱蔽的房頂上張望堰乔。 院中可真熱鬧,春花似錦脐恩、人聲如沸镐侯。這莊子的主人今日做“春日...
    開(kāi)封第一講書(shū)人閱讀 30,315評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)苟翻。三九已至韵卤,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間崇猫,已是汗流浹背沈条。 一陣腳步聲響...
    開(kāi)封第一講書(shū)人閱讀 31,539評(píng)論 1 262
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留邓尤,地道東北人拍鲤。 一個(gè)月前我還...
    沈念sama閱讀 45,578評(píng)論 2 355
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像汞扎,于是被迫代替她去往敵國(guó)和親。 傳聞我的和親對(duì)象是個(gè)殘疾皇子擅这,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,877評(píng)論 2 345

推薦閱讀更多精彩內(nèi)容

  • 〇澈魄、前言 本文共108張圖,流量黨請(qǐng)慎重仲翎! 歷時(shí)1個(gè)半月痹扇,我把自己學(xué)習(xí)Python基礎(chǔ)知識(shí)的框架詳細(xì)梳理了一遍。 ...
    Raxxie閱讀 18,922評(píng)論 17 410
  • 第五章 函數(shù)和代碼復(fù)用 函數(shù)的基本使用 函數(shù)的定義 函數(shù)是一段具有特定功能的溯香、可重用的語(yǔ)句組鲫构,用函數(shù)名來(lái)表示并通過(guò)...
    jplee閱讀 4,155評(píng)論 0 1
  • 黃昏 太陽(yáng)把最后的光 溫柔的送給這半球上的所有需要 又要去關(guān)照另一撥兒 清醒了的人們 一些吃飽飯的人 在有花有...
    云淡風(fēng)輕之藍(lán)閱讀 519評(píng)論 18 21
  • 我一定是錯(cuò)過(guò)了什么對(duì)嗎结笨? 是在書(shū)上,還是在本子上湿镀,還是其它的炕吸? 可是我已經(jīng)全都丟了,屬于初中的回憶勉痴,全被我丟掉了赫模。...
    相與__閱讀 1,040評(píng)論 0 0