第一章 認(rèn)識(shí)Python

“Python是什么仅财?” 用一句著名的話來解釋:“人生苦短,我用Python碗淌≌登螅”
當(dāng)然這只是一個(gè)段子,認(rèn)真點(diǎn)講亿眠,官方介紹:“Python是一種易于學(xué)習(xí)碎罚,強(qiáng)大的編程語(yǔ)言。 它具有高效的高級(jí)數(shù)據(jù)結(jié)構(gòu)和面向?qū)ο缶幊痰暮?jiǎn)單而有效的方法纳像。 Python的優(yōu)雅語(yǔ)法和動(dòng)態(tài)類型魂莫,以及其解釋性質(zhì),使其成為在大多數(shù)平臺(tái)上的許多領(lǐng)域的腳本和快速應(yīng)用程序開發(fā)的理想語(yǔ)言爹耗“铱迹” 總結(jié)來說你學(xué)會(huì)了Python以后谜喊,你可以開發(fā)部署一個(gè)web站點(diǎn)、可以在移動(dòng)設(shè)備上做動(dòng)態(tài)化倦始、毫不費(fèi)勁的構(gòu)建GUI斗遏。


安裝Python

在開始學(xué)習(xí)之前,我們要確保計(jì)算機(jī)已經(jīng)安裝了Python解釋器鞋邑。本例都采用Python3來進(jìn)行學(xué)習(xí)诵次。在命令窗口使用:

python3 -v

來檢測(cè)是否安裝并且配置了環(huán)境變量,如果你的計(jì)算機(jī)沒有安裝Python枚碗,可以從 https://www.python.org來下載安裝逾一。記得選Python3版本,關(guān)于windows的配置肮雨,讀者可網(wǎng)上自行搜索方法(沒有環(huán)境的遵堵,快去安裝吧,我會(huì)在這里等你)怨规。

等候中...

安裝配置成功后陌宿,會(huì)發(fā)現(xiàn)安裝目錄里有一個(gè)IDLE,這是Python的集成開發(fā)環(huán)境波丰,IDLE包括一個(gè)能夠利用顏色突出語(yǔ)法的編輯器壳坪、一個(gè)調(diào)試工具、Python Shell,以及一個(gè)完整的Python3在線文檔集掰烟。


第一行Python

打開IDLE爽蝴,會(huì)看到>>>的提示符,在提示符后面輸入:

print('Hello Python')

你已經(jīng)猜到了纫骑,我們會(huì)輸入類似hello world的東西惧磺,如果你在IDLE上看到輸出捻撑,說明你的第一行Python代碼成功了磨隘。這里簡(jiǎn)單說明一下:print()是Python的BIF(built-in functions)也就是我們編程常說的內(nèi)置函數(shù)。
Python為我們提供了大概超過70個(gè)BIF顾患,你可以在IDLE里輸入:

dir(__builtins__)

來查看Python有哪些BIF江解,注意:括號(hào)里的下劃線是前后都有兩個(gè)设预,不要敲錯(cuò)了。如果你在IDLE里看到一大堆類似數(shù)組包裹的英文單詞集合犁河,那說明你成功了魄梯。

>>> dir(__builtins__)
['ArithmeticError', 'AssertionError', 'AttributeError', 'BaseException', 'BlockingIOError', 'BrokenPipeError', 'BufferError', 'BytesWarning', 'ChildProcessError', 'ConnectionAbortedError', 'ConnectionError', 'ConnectionRefusedError', 'ConnectionResetError', 'DeprecationWarning', 'EOFError', 'Ellipsis', 'EnvironmentError', 'Exception', 'False', 'FileExistsError', 'FileNotFoundError', 'FloatingPointError', 'FutureWarning', 'GeneratorExit', 'IOError', 'ImportError', 'ImportWarning', 'IndentationError', 'IndexError', 'InterruptedError', 'IsADirectoryError', 'KeyError', 'KeyboardInterrupt', 'LookupError', 'MemoryError', 'ModuleNotFoundError', 'NameError', 'None', 'NotADirectoryError', 'NotImplemented', 'NotImplementedError', 'OSError', 'OverflowError', 'PendingDeprecationWarning', 'PermissionError', 'ProcessLookupError', 'RecursionError', 'ReferenceError', 'ResourceWarning', 'RuntimeError', 'RuntimeWarning', 'StopAsyncIteration', 'StopIteration', 'SyntaxError', 'SyntaxWarning', 'SystemError', 'SystemExit', 'TabError', 'TimeoutError', 'True', 'TypeError', 'UnboundLocalError', 'UnicodeDecodeError', 'UnicodeEncodeError', 'UnicodeError', 'UnicodeTranslateError', 'UnicodeWarning', 'UserWarning', 'ValueError', 'Warning', 'ZeroDivisionError', '__build_class__', '__debug__', '__doc__', '__import__', '__loader__', '__name__', '__package__', '__spec__', 'abs', 'all', 'any', 'ascii', 'bin', 'bool', 'bytearray', 'bytes', 'callable', 'chr', 'classmethod', 'compile', 'complex', 'copyright', 'credits', 'delattr', 'dict', 'dir', 'divmod', 'enumerate', 'eval', 'exec', 'exit', 'filter', 'float', 'format', 'frozenset', 'getattr', 'globals', 'hasattr', 'hash', 'help', 'hex', 'id', 'input', 'int', 'isinstance', 'issubclass', 'iter', 'len', 'license', 'list', 'locals', 'map', 'max', 'memoryview', 'min', 'next', 'object', 'oct', 'open', 'ord', 'pow', 'print', 'property', 'quit', 'range', 'repr', 'reversed', 'round', 'set', 'setattr', 'slice', 'sorted', 'staticmethod', 'str', 'sum', 'super', 'tuple', 'type', 'vars', 'zip']
>>> 

如果你想了解某個(gè)功能酿秸,繼續(xù)輸入:

help(sum) 

隨后就會(huì)返回sum函數(shù)相關(guān)的描述信息魏烫。

>>> help(sum)
Help on built-in function sum in module builtins:

sum(iterable, start=0, /)
    Return the sum of a 'start' value (default: 0) plus an iterable of numbers
    
    When the iterable is empty, return the start value.
    This function is intended specifically for use with numeric values and may
    reject non-numeric types.
>>>

這里再說明一下IDLE便捷使用方法
1.快捷選擇BIF:輸入pr(print的前兩個(gè)字母)然后按tab哄褒,將會(huì)出現(xiàn)代碼提示,按空上下光標(biāo)選擇退客,格鍵選中要使用的BIF或變量罚舱。
2.快速切換代碼:Mac上使用Ctrl+P可以回退上一行代碼,使用Ctrl+N可以前進(jìn)到下一行代碼粥脚,在Windows上需要使用Alt+P和Alt+N包个。還有一些其他屬性設(shè)置碧囊,有興趣的同學(xué)自行嘗試。


創(chuàng)建Python列表

下面我們來學(xué)習(xí)如何用Python創(chuàng)建和處理列表數(shù)據(jù)糯而。假設(shè)我們現(xiàn)在有一些書籍清單:Java編程思想熄驼,Android開發(fā)詳解,HTML5技術(shù)探索∨祷觯現(xiàn)在我們用Python將他們收集起來:

books = ['Java編程思想','Android開發(fā)詳解','HTML5技術(shù)探索']

然后調(diào)用打蛹缆:

print(books)

不出意外IDLE將會(huì)輸出:

>>> print(books)
['Java編程思想', 'Android開發(fā)詳解', 'HTML5技術(shù)探索']
>>> 

如果你學(xué)過其它編程語(yǔ)言,你肯定會(huì)問胃夏,books為什么沒有變量標(biāo)識(shí)符類型构订?沒錯(cuò),Python就是這么簡(jiǎn)易囊榜,無需指定數(shù)據(jù)類型亥宿,只需要給出一個(gè)自定義的名稱標(biāo)識(shí)符烫扼,按照Python格式來書寫,就可以得到一個(gè)數(shù)據(jù)變量/集合悟狱。


查詢Python列表數(shù)據(jù)

我們繼續(xù)學(xué)習(xí)堰氓,現(xiàn)在我們已經(jīng)有了集合双絮,想得到某一個(gè)值怎么做呢?你只需要像這樣:

print(books[0])

輸出:

>>> print(books[0])
Java編程思想
>>> 

非常的簡(jiǎn)單软免,Python和大多語(yǔ)言一樣焚挠,集合的索引是從0開始的蝌衔。如果想取最后一個(gè)值如何做?先不要往下看挟鸠,你自己先試試(記得用快捷鍵亩冬,切回上一行代碼):

print(books[2])

沒錯(cuò),如果我們知道數(shù)據(jù)長(zhǎng)度覆享,可以這么書寫撒顿,就能得到正確的值荚板。除此之外還有一種方式也可以做到:

print(books[-1])

這樣Python就會(huì)從最后一位開始查詢數(shù)據(jù):

>>> print(books[-1])
HTML5技術(shù)探索
>>> 

這里簡(jiǎn)單說一下異常相關(guān),如果你輸入了不存在的索引拧抖,那么IDLE會(huì)無情的拋出:

>>> print(books[3])
Traceback (most recent call last):
  File "<pyshell#8>", line 1, in <module>
    print(books[3])
IndexError: list index out of range
>>> 

以后如果看到 list index out of range 就知道是索引越界了唧席。


修改Python列表數(shù)據(jù)

剛才我們創(chuàng)建了3本書嘲驾,現(xiàn)在需要多增加一本辽故,如何去做?如果你選擇重新創(chuàng)建一個(gè)列表也是一種辦法蓬衡。不過我們今天不打算這么做彤枢。我們來嘗試用列表自帶的函數(shù)來處理:

books.append('iOS設(shè)計(jì)模式')

記得用快捷鍵:TAB(輸入books.app然后TAB缴啡,選擇append,空格,這是最后一次友情提示)

>>> print(books)
['Java編程思想', 'Android開發(fā)詳解', 'HTML5技術(shù)探索', 'iOS設(shè)計(jì)模式']
>>> 

這樣就會(huì)在列表的最后追加一條記錄了秒咐。除了append()我們還可以使用:

books.insert(0,'C++入門')

insert(index,data)在指定位置插入一條記錄碘裕。

>>> print(books)
['C++入門', 'Java編程思想', 'Android開發(fā)詳解', 'HTML5技術(shù)探索', 'iOS設(shè)計(jì)模式']
>>> 

這樣就成功的將C++入門插入到記錄最開始的位置帮孔。
如果列表只是這樣不撑,那就沒什么特點(diǎn)了焕檬,Python的列表不僅僅可以添加相同類型的數(shù)據(jù)類型澳泵,它是支持混合類型的,利用剛才學(xué)習(xí)的函數(shù),我們現(xiàn)在要給每本書增加一個(gè)價(jià)格:

books.insert(1,50.9);
>>> books.insert(1,50.9)
>>> print(books)
['C++入門', 50.9, 'Java編程思想', 'Android開發(fā)詳解', 'HTML5技術(shù)探索', 'iOS設(shè)計(jì)模式']
>>> 

Python就是這么神奇腊敲,可以將不同類型的數(shù)據(jù)存放在一起兔仰!后面還有幾本書蕉鸳,我們繼續(xù)添加價(jià)格:

books.insert(3,60.5)

注意潮尝,添加完成之后,要重新計(jì)算后面的位置羹蚣,確保所有的價(jià)格在書籍的后面乱凿,不要添加錯(cuò)了徒蟆。這里有個(gè)小技巧,最后一個(gè)直接使用append()全蝶。

  編碼中...

很遺憾寺枉,我剛才添加倒數(shù)第二個(gè)書籍的價(jià)格計(jì)算錯(cuò)誤姥闪,導(dǎo)致數(shù)據(jù)變成了如下:

>>> books.insert(6,78.9)
>>> print(books)
['C++入門', 50.9, 'Java編程思想', 60.5, 'Android開發(fā)詳解', 76.5, 78.9, 'HTML5技術(shù)探索', 'iOS設(shè)計(jì)模式', 88.3]
>>> 

恭喜你已經(jīng)看了50%,喝杯java適當(dāng)休息一下吧催式。


刪除Python列表數(shù)據(jù)

不過不用擔(dān)心蓄氧,列表還提供了刪除的方法來幫我們修正這些問題:

books.pop(6)
>>> books.pop(6)
78.9
>>> print(books)
['C++入門', 50.9, 'Java編程思想', 60.5, 'Android開發(fā)詳解', 76.5, 'HTML5技術(shù)探索', 'iOS設(shè)計(jì)模式', 88.3]
>>> 

如果成功刪除(彈出)槐脏,IDLE會(huì)自動(dòng)打印被刪掉(彈出)的數(shù)據(jù)顿天,除此之外還有一種更簡(jiǎn)單的方式:

books.remove(78.9)

使用remove(value)來刪除數(shù)據(jù),前提是該數(shù)據(jù)確實(shí)存在咽白,否則就會(huì)得到一個(gè)無情的錯(cuò)誤提示鸟缕。刪掉數(shù)據(jù)之后懂从,我們就可以重新添加記錄了。
還有別的方式來修改錯(cuò)誤的數(shù)據(jù)侵贵,想想看如何做窍育?答案結(jié)尾揭曉(現(xiàn)在別看)宴胧。


循環(huán)Python列表數(shù)據(jù)

前面提到,如果想輸出列表中的數(shù)據(jù)辽旋,使用list[index],這種方式固然簡(jiǎn)單补胚,但是我們想打印所有的數(shù)據(jù)怎么辦追迟?如果有100條敦间,那豈不是要輸出100個(gè)print束铭?顯然Python已經(jīng)幫我們想到了契沫,是時(shí)候開始迭代了昔汉!
Python通過內(nèi)置的for來完成循環(huán),來個(gè)栗子:

for value in values:
  #do something

for...in...:這種寫法就是Python的for循環(huán)結(jié)構(gòu)会通。每次循環(huán)values就會(huì)將當(dāng)前索引下的值賦給value涕侈,然后我們可以對(duì)value來做操作煤辨,下面來試試:

for book in books:
    print(book)
>>> for book in books:
    print(book)

    
C++入門
50.9
Java編程思想
60.5
Android開發(fā)詳解
76.5
HTML5技術(shù)探索
78.9
iOS設(shè)計(jì)模式
88.3
>>> 

怎么樣众辨,是不是很cool,除了for...in形式的循環(huán)技肩,Python還提供了while循環(huán):

index = 0
while index < len(books):
  print(books[index])
  index += 1

結(jié)果和上面for是一樣的虚婿,我就不貼出來了泳挥。細(xì)心的你可能已經(jīng)發(fā)現(xiàn)我們使用了一個(gè)新的BIF --- len(obj)屉符。這個(gè)函數(shù)是可以獲取傳入對(duì)象的長(zhǎng)度。
至于用for還是while唆香,具體要看實(shí)際應(yīng)用躬它。我的建議是優(yōu)先使用for东涡,它可以自動(dòng)的從列表起始到結(jié)束,而使用while你需要單獨(dú)控制索引來處理组贺,很可能會(huì)漏掉一條數(shù)據(jù)失尖。當(dāng)然除非你需要while循環(huán)提供額外控制的話雹仿。


Python列表中的列表

前面提到列表是一個(gè)數(shù)據(jù)的集合整以,它不關(guān)心內(nèi)部是數(shù)據(jù)類型,那么我們可以將列表存放在列表內(nèi),現(xiàn)在我們來改造一下books列表:

books = ['C++入門', 50.9, 
         'Java編程思想', 60.5,
         'Android開發(fā)詳解', 76.5,
         'HTML5技術(shù)探索', 78.9, 
         'iOS設(shè)計(jì)模式', 88.3]

先回憶下之前的列表邑商,之前的列表是書籍和價(jià)格混合在一起人断,不太好看我們來改造一下:

>>> books = [['C++入門', 50.9], 
             ['Java編程思想', 60.5],
             ['Android開發(fā)詳解', 76.5],
             ['HTML5技術(shù)探索', 78.9], 
             ['iOS設(shè)計(jì)模式', 88.3]]

現(xiàn)在列表按照[書籍,價(jià)格]的結(jié)構(gòu)來設(shè)計(jì)恶迈,看起來清晰一些谱醇「笨剩看來列表嵌套列表Python也是支持的。這時(shí)候我們?cè)賹?duì)列表數(shù)據(jù)進(jìn)行調(diào)整斥滤,現(xiàn)在我們需要按照出版社來歸類書籍佑颇,即:一個(gè)出版社對(duì)應(yīng)多個(gè)書籍草娜。繼續(xù)改造驱还。

忙碌中...

數(shù)據(jù)改造完成凸克,我們看看效果:

books = [['機(jī)械工業(yè)出版社',['C++入門', 50.9],['Java編程思想', 60.5]],
         ['人民郵電出版社',['Android開發(fā)詳解', 76.5],['HTML5技術(shù)探索', 78.9]],
         ['中國(guó)電力出版社' ,['iOS設(shè)計(jì)模式', 88.3]]]

看起來有些復(fù)雜萎战,我們循環(huán)打印下結(jié)果:

>>> for book in books:
    print(book)    

['機(jī)械工業(yè)出版社', ['C++入門', 50.9], ['Java編程思想', 60.5]]
['人民郵電出版社', ['Android開發(fā)詳解', 76.5], ['HTML5技術(shù)探索', 78.9]]
['中國(guó)電力出版社', ['iOS設(shè)計(jì)模式', 88.3]]
>>> 


Python中使用條件判斷

上面的列表好像就少了一層[]而已蚂维,如果想繼續(xù)打印內(nèi)部的怎么辦呢路狮?我們應(yīng)該在循環(huán)的內(nèi)做一個(gè)判斷奄妨,如果是列表就繼續(xù)循環(huán),否則就打印輸出评雌。這時(shí)候該使用if-else結(jié)構(gòu)了

if ... :
  #do if
else:
  #do else

來嘗試改下for的打泳岸:

>>> for book in books:
    if isinstance(book,list):
        for b in book:
            print(b)
    else: print(book)

機(jī)械工業(yè)出版社
['C++入門', 50.9]
['Java編程思想', 60.5]
人民郵電出版社
['Android開發(fā)詳解', 76.5]
['HTML5技術(shù)探索', 78.9]
中國(guó)電力出版社
['iOS設(shè)計(jì)模式', 88.3]
>>> 

現(xiàn)在看來是清晰了不少斤吐。這里用到一個(gè)BIF --- isinstance(obj,class)函數(shù)厨喂,它的作用是來檢查某個(gè)特定的標(biāo)識(shí)符是否包含某個(gè)特定的類型的數(shù)據(jù)杯聚。

但是書籍和價(jià)格還是一個(gè)列表,現(xiàn)在需要再循環(huán)一次:

>>> for book in books:
    if isinstance(book,list):
        for b in book:
            if isinstance(b,list):
                for b1 in b:
                    print(b1)
            else:
                print(b)
    else:
        print(book)

機(jī)械工業(yè)出版社
C++入門
50.9
Java編程思想
60.5
人民郵電出版社
Android開發(fā)詳解
76.5
HTML5技術(shù)探索
78.9
中國(guó)電力出版社
iOS設(shè)計(jì)模式
88.3
>>> 

終于把所有的列表都循環(huán)出來了颁褂。但是這個(gè)代碼量無法接受颁独。經(jīng)過分析其實(shí)最里面的if和外層的if條件是一樣的伪冰,如你所想接下來就要請(qǐng)出函數(shù)了。


Python中創(chuàng)建函數(shù)

使用Python創(chuàng)建函數(shù)很簡(jiǎn)單寨辩,使用關(guān)鍵字:

def 函數(shù)名 (參數(shù)):
    #do something

我們來將剛才冗長(zhǎng)的for+if用函數(shù)來封裝試試:

>>> def get_book(books):
    for book in books:
        if isinstance(book,list):
            get_book(book)
        else:
            print(book)
>>>

是不是很簡(jiǎn)答靡狞,我只需要在最開始的for循環(huán)最上面加上函數(shù)的創(chuàng)建規(guī)則隔嫡,然后在if條件中調(diào)用自身腮恩,這樣就可以完成遞歸調(diào)用,我們來調(diào)用函數(shù),將books傳入看結(jié)果如何:

>>> get_book(books)
機(jī)械工業(yè)出版社
C++入門
50.9
Java編程思想
60.5
人民郵電出版社
Android開發(fā)詳解
76.5
HTML5技術(shù)探索
78.9
中國(guó)電力出版社
iOS設(shè)計(jì)模式
88.3
>>>

結(jié)果正和我們預(yù)想的一樣武契。掌握了函數(shù)這個(gè)功能吝羞,我們又能開心、輕松的編程了敦腔。


總結(jié)

我們今天學(xué)習(xí)了:

  • 使用Python的print()函數(shù)打印信息符衔。
  • 不需要指定標(biāo)識(shí)符類型就能創(chuàng)建出變量判族、列表。
  • 查詢列表槽惫、修改列表(list.append()辩撑、list.insert())合冀、刪除列表(list.remove())君躺、列表嵌套开缎。
  • for循環(huán)啥箭、while循環(huán)治宣。
  • if: else:條件判斷侮邀。
  • 使用def創(chuàng)建函數(shù)绊茧。
  • 學(xué)習(xí)了幾個(gè)函數(shù):
len()
isinstance()

還有最重要的一點(diǎn),即使上面的都忘記了也沒關(guān)系鹏秋。一定要記住使用:

dir(__builtins__)

然后在搭配:

help(func)

來查閱函數(shù)文檔侣夷。


答案揭曉

? 你要自己思考百拓、嘗試后才可以看這里晰甚。
這里是剛才的那個(gè)列表。

>>> print(books)
['C++入門', 50.9, 'Java編程思想', 60.5, 'Android開發(fā)詳解', 76.5, 78.9, 'HTML5技
術(shù)探索', 'iOS設(shè)計(jì)模式', 88.3]
>>>

我們直接給相應(yīng)的數(shù)據(jù)用索引查到充石,然后賦值即可:

>>> books[6] = 'HTML5技術(shù)探索'
>>> books[7] = 78.9
>>> print(books)
['C++入門', 50.9, 'Java編程思想', 60.5, 'Android開發(fā)詳解', 76.5, 'HTML5技術(shù)探索', 78.9, 'iOS設(shè)計(jì)模式', 88.3]
>>> 

相信你已經(jīng)想到答案了


今天的Python之旅就到這里了,如果大家喜歡請(qǐng)點(diǎn)贊、收藏亭引,我會(huì)繼續(xù)更新后面的章節(jié)焙蚓。


恭喜你達(dá)成<Python入門>成就。


最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市宏浩,隨后出現(xiàn)的幾起案子比庄,更是在濱河造成了極大的恐慌佳窑,老刑警劉巖,帶你破解...
    沈念sama閱讀 217,084評(píng)論 6 503
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異鹃唯,居然都是意外死亡瓣喊,警方通過查閱死者的電腦和手機(jī)型宝,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,623評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門八匠,熙熙樓的掌柜王于貴愁眉苦臉地迎上來絮爷,“玉大人趴酣,你說我怎么就攤上這事】雍唬” “怎么了岖寞?”我有些...
    開封第一講書人閱讀 163,450評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵,是天一觀的道長(zhǎng)柜蜈。 經(jīng)常有香客問我仗谆,道長(zhǎng),這世上最難降的妖魔是什么隶垮? 我笑而不...
    開封第一講書人閱讀 58,322評(píng)論 1 293
  • 正文 為了忘掉前任,我火速辦了婚禮秘噪,結(jié)果婚禮上狸吞,老公的妹妹穿的比我還像新娘。我一直安慰自己,他們只是感情好蹋偏,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,370評(píng)論 6 390
  • 文/花漫 我一把揭開白布便斥。 她就那樣靜靜地躺著,像睡著了一般威始。 火紅的嫁衣襯著肌膚如雪枢纠。 梳的紋絲不亂的頭發(fā)上,一...
    開封第一講書人閱讀 51,274評(píng)論 1 300
  • 那天黎棠,我揣著相機(jī)與錄音晋渺,去河邊找鬼。 笑死脓斩,一個(gè)胖子當(dāng)著我的面吹牛些举,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播俭厚,決...
    沈念sama閱讀 40,126評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼户魏,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來了挪挤?” 一聲冷哼從身側(cè)響起叼丑,我...
    開封第一講書人閱讀 38,980評(píng)論 0 275
  • 序言:老撾萬榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎扛门,沒想到半個(gè)月后鸠信,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,414評(píng)論 1 313
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡论寨,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,599評(píng)論 3 334
  • 正文 我和宋清朗相戀三年星立,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片葬凳。...
    茶點(diǎn)故事閱讀 39,773評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡绰垂,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出火焰,到底是詐尸還是另有隱情劲装,我是刑警寧澤,帶...
    沈念sama閱讀 35,470評(píng)論 5 344
  • 正文 年R本政府宣布昌简,位于F島的核電站占业,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏纯赎。R本人自食惡果不足惜谦疾,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,080評(píng)論 3 327
  • 文/蒙蒙 一、第九天 我趴在偏房一處隱蔽的房頂上張望犬金。 院中可真熱鬧念恍,春花似錦碎紊、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,713評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)。三九已至词爬,卻和暖如春秃嗜,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背顿膨。 一陣腳步聲響...
    開封第一講書人閱讀 32,852評(píng)論 1 269
  • 我被黑心中介騙來泰國(guó)打工锅锨, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人恋沃。 一個(gè)月前我還...
    沈念sama閱讀 47,865評(píng)論 2 370
  • 正文 我出身青樓必搞,卻偏偏與公主長(zhǎng)得像,于是被迫代替她去往敵國(guó)和親囊咏。 傳聞我的和親對(duì)象是個(gè)殘疾皇子恕洲,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,689評(píng)論 2 354

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