python科學(xué)計(jì)算之Numpy

Numpy的組成與功能

Numpy(Numeric Python)可以被理解為一個(gè)用python實(shí)現(xiàn)的科學(xué)計(jì)算包,包括:

????????? 1.強(qiáng)大的N維數(shù)組對象Array镀钓;

?????????? 2.成熟的函數(shù)庫摇幻;

?????????? 3.實(shí)用的線性代數(shù)谁不、傅里葉變換和隨機(jī)數(shù)生成函數(shù)茅逮。

?????????? 線性代數(shù)是數(shù)學(xué)的一個(gè)分支氓鄙,它的研究對象是向量荆忍,向量空間(或稱線性空間)本冲,線性變換和有限維的線性方程組厨埋。

?????????? 傅立葉變換邪媳,表示能將滿足一定條件的某個(gè)函數(shù)表示成三角函數(shù)(正弦和/或余弦函數(shù))或者它們的積分的線性組合。

提供了許多高級的數(shù)值編程工具,如矩陣數(shù)據(jù)類雨效、矢量處理迅涮,以及精密的運(yùn)算庫。


為什么要使用數(shù)組對象徽龟?

1.數(shù)組對象可以去掉元素間運(yùn)算所需的循環(huán)叮姑,使一維向量更像單個(gè)數(shù)據(jù)

2.設(shè)置專門的數(shù)組對象,經(jīng)過優(yōu)化据悔,可以提升這類應(yīng)用的運(yùn)算速度

???? 觀察:科學(xué)計(jì)算中传透,一個(gè)維度所有數(shù)據(jù)的類型往往相同

3.數(shù)組對象采用相同的數(shù)據(jù)類型,有助于節(jié)省運(yùn)算和存儲(chǔ)空間

例:計(jì)算a2+b3,其中极颓,a和b是一維數(shù)組

基礎(chǔ)知識(shí)

維度(dimensions)叫做軸(axes 原型:axis

軸的個(gè)數(shù)叫做秩(rank)

例如朱盐,在3D空間一個(gè)點(diǎn)的坐標(biāo)[1,2,3]是一個(gè)秩為1的數(shù)據(jù),因?yàn)樗挥幸粋€(gè)軸菠隆。軸長度為3.

例如兵琳,在[[1.,0.,0.],[0.,1.,2.]]這個(gè)例子中,數(shù)組的秩為2(它有兩個(gè)維度)骇径。第一個(gè)維度長度為2躯肌,第二個(gè)維度長度為3.

Numpy的數(shù)組類被稱作ndarray,通常被稱作數(shù)組破衔。

ndarray是一個(gè)多位數(shù)組對象清女,有兩部分構(gòu)成:

?????????? 實(shí)際的數(shù)據(jù)

??????????? 描述這些數(shù)據(jù)的元數(shù)據(jù)(數(shù)據(jù)維度、數(shù)據(jù)類型)

ndarray數(shù)組一般要求所有原屬類型相同(同質(zhì))运敢,數(shù)組下標(biāo)從0開始

注意:numpy.array和標(biāo)準(zhǔn)python庫類array.array并不相同校仑,后者只處理一維數(shù)組和提供少量功能。

ndarray對象屬性主要見下表:例如其中.shape表示數(shù)組的維度传惠,.size表示數(shù)組元素的個(gè)數(shù)迄沫。

ndarray.ndim? 秩,即軸的數(shù)量或維度的數(shù)量

ndarray.shape? 數(shù)組的維度卦方,這是一個(gè)指示數(shù)組在每個(gè)維度上大小的整數(shù)元祖羊瘩。(ndarray對象的尺度,對于矩陣盼砍,n行m列)

ndarray.size?? 數(shù)組元素的總個(gè)數(shù)尘吗,等于shape屬性中元組元素的乘積。(ndarray對象的個(gè)數(shù)浇坐,相當(dāng)于.shape中n*m的值)

ndarray.itemsize? 數(shù)組中每個(gè)元素字節(jié)的大小睬捶。

ndarray.dtype?? 一個(gè)用來描述數(shù)組中元組類型的對象,可以通過使用標(biāo)準(zhǔn)python類型創(chuàng)造dtype.

ndarray.data????? 包含實(shí)際數(shù)組元素的緩沖區(qū)近刘,通常我們通過索引引用數(shù)組元素擒贸,不使用這個(gè)屬性


ndarray的元素類型

bool??????? 布爾類型臀晃,true或false

intc???????? 與c語言中的int類型一致,一般是int32或int64

intp????????? 用于索引的整數(shù)介劫,與c語言中ssize_t一致徽惋,int32或int64

int8????????? 字節(jié)長度的整數(shù),取值:[-128,127]

int16? ? ? ? 16位長度的整數(shù)座韵,取值:[-32768,32768]

int32? ? ? ? ? 32位長度的整數(shù)险绘,取值:[-2^31,2^31-1]

int64? ? ? ? ? 64位長度的整數(shù),取值:[-2^63,2^63-1]

uint8??????? 8位無符號整數(shù)誉碴,取值:[0宦棺,255]

uint16? ? ? ? 16位無符號整數(shù),取值:[0翔烁,65535]

uint32? ? ? ? 32位無符號整數(shù)渺氧,取值:[0,2^32-1]

uint64? ? ? ? 64位無符號整數(shù)蹬屹,取值:[0,2^64-1]

float16?????? 16位半精度浮點(diǎn)數(shù):1位符號位白华,5位指數(shù)慨默,10位尾數(shù)

float32? ? ? 32位半精度浮點(diǎn)數(shù):1位符號位,8位指數(shù)弧腥,23位尾數(shù)

float64? ? ? 64位半精度浮點(diǎn)數(shù):1位符號位厦取,11位指數(shù),52位尾數(shù)

complex64?? 復(fù)數(shù)類型管搪,實(shí)部和虛部都是32位浮點(diǎn)數(shù)

complex128? 復(fù)數(shù)類型虾攻,實(shí)部和虛部都是64位浮點(diǎn)數(shù)

?????????????????????? 實(shí)部(.real)+j虛部(.imag)

ndarray為什么要支持這么多種元素類型?

對比:python語法僅支持整數(shù)更鲁、浮點(diǎn)數(shù)和復(fù)數(shù)3種類型

1.科學(xué)計(jì)算設(shè)計(jì)數(shù)據(jù)較多霎箍,對存儲(chǔ)和性能都有較高要求

2.對元素類型精細(xì)定義,有助于numpy合理使用儲(chǔ)存空間并優(yōu)化性能

3.對元素類型精細(xì)定義澡为,有助于程序員對程序規(guī)模有合理評估

ndarray數(shù)組可以由非同質(zhì)對象構(gòu)成 np.array([0,1,2,3,4],[9,8,7,6])

非同質(zhì)ndarray元素為對象類型? dtype = object

非同質(zhì)ndarray對象無法有效發(fā)揮numpy優(yōu)勢漂坏,盡量避免使用

創(chuàng)建數(shù)組(方法一)

創(chuàng)建數(shù)組的方法有多種,比如可以使用array函數(shù)利用常規(guī)的python列表和元組創(chuàng)造數(shù)組媒至。所創(chuàng)建的數(shù)組類型由原序列中的元素類型決定顶别。

x= np.array(list/tuple,dtype=np.float32)

示例如下:

創(chuàng)建數(shù)組(方法二)

numpy提供了一些使用占位符創(chuàng)建數(shù)組的函數(shù)

例如:

函數(shù)zeros(shape)創(chuàng)建一個(gè)全是0的數(shù)組,

函數(shù)ones(shape)創(chuàng)建一個(gè)全1的數(shù)組拒啰,

函數(shù)empty創(chuàng)建一個(gè)內(nèi)容隨機(jī)并且依賴與內(nèi)存狀態(tài)的數(shù)組

函數(shù)full(shape驯绎,val) 根據(jù)shape生成一個(gè)數(shù)組,每個(gè)元素值都是val

函數(shù)eye(n)創(chuàng)建一個(gè)正方的n*n的單位矩陣谋旦,對角線為1剩失,其余都是0

默認(rèn)創(chuàng)建的數(shù)組類型(dtype)都是float64.示例如下:

zeros((3,4))

ones((2,3,4),dtype = int16)

#2個(gè)維度骗随,每個(gè)維對里有3個(gè)數(shù)組,每個(gè)數(shù)組里4個(gè)元素

empty((2,3))

np.eye(5)

創(chuàng)建數(shù)組(方法三)

此外numpy提供一個(gè)arange的函數(shù)返回?cái)?shù)組赴叹,示例如下:

arange(10,30,5)

arange(0,2,0.3)

其他創(chuàng)建方法

np.ones_like(a)???? 根據(jù)數(shù)組a的形狀生成一個(gè)全1數(shù)組

np.zeros_like(a)? ? 根據(jù)數(shù)組a的形狀生成一個(gè)全0數(shù)組

np.full_like(a鸿染,val)? ? 根據(jù)數(shù)組a的形狀生成一個(gè)數(shù)組,每個(gè)元素值都是val

np.linspace()? ? 根據(jù)起止數(shù)據(jù)等間距地填充數(shù)據(jù),形成數(shù)據(jù)

np.concatenate()? 將兩個(gè)或多個(gè)數(shù)組合成一個(gè)新的數(shù)組



打印數(shù)組

打印數(shù)組時(shí)乞巧,numpy以類似嵌套列表的形式顯示

?示例如下:其中一維數(shù)組被打印成行涨椒,二維數(shù)組成矩陣,三維數(shù)組成矩陣列表



ndarray數(shù)組的變換

對于創(chuàng)建后的ndarray數(shù)組绽媒,可以對其進(jìn)行緯度變換和元素類型變換

a = np.ones((2,3,4),dtype = np.int32)

.reshape(shape)???? 不改變數(shù)組元素蚕冬,返回一個(gè)shape形態(tài)的數(shù)組,原數(shù)組不變

.resize(shape)??????? 與.reshape()功能一致是辕,但修改原數(shù)組

.swapaxes(ax1,ax2)??? 將數(shù)組n個(gè)維度中兩個(gè)維度進(jìn)行調(diào)換

.flatten()????????????????? 對數(shù)組進(jìn)行降維囤热,返回折疊后的一堆數(shù)組,原數(shù)組不變

ndarray數(shù)組的維度變換

基本運(yùn)算

數(shù)組的算術(shù)運(yùn)算是按元素進(jìn)行获三。

???????? numpy中的乘法運(yùn)算符*指示按元素計(jì)算

矩陣乘法可以使用dot函數(shù)或創(chuàng)建矩陣對象實(shí)現(xiàn)旁蔼。

numpy一元函數(shù)

對ndarray中的數(shù)據(jù)執(zhí)行元素級運(yùn)算的函數(shù)

np.abs(x)? np.fabs(x)? 計(jì)算數(shù)組各元素的絕對值

np.sqrt(x)?? 計(jì)算數(shù)組各元素的平方根

np.square(x)? 計(jì)算數(shù)組各元素的平方

np.log(x)?? np.log10(x)? np.log2(x)?? 計(jì)算數(shù)組各元素的自然對數(shù)、10底對數(shù)和2底對數(shù)

np.ceil(x)?? np.floor(x)?? 計(jì)算數(shù)組各元素的ceiling值或floor值

np.rint(x)?? 計(jì)算數(shù)組各元素的四舍五入值

np.modf(x)?? 將數(shù)組各元素的小數(shù)和整數(shù)部分以兩個(gè)獨(dú)立數(shù)組形式返回

np.cos(x)? np.cosh(x) np.sin(x)? np.sinh(x)? np.tan(x)? np.tanh(x)? 計(jì)算數(shù)組各元素的普通型和雙曲型三角函數(shù)

np.exp(x)?? 計(jì)算數(shù)組各元素的指數(shù)值

np.sign(x)?? 計(jì)算數(shù)組各元素的符號值疙教,1(+),0,-1(-)

+ 1 * / **???? 兩個(gè)數(shù)組各元素進(jìn)行對應(yīng)運(yùn)算

np.maxinum(x,y)? np.fmax()? np.minimum(x,y)? np.fmin()? 元素級的最大值/最小值計(jì)算

np.mod(x.y)??? 元素級的模運(yùn)算

np.copysign(x,y)?? 將數(shù)組y中各元素值的符號賦值給數(shù)組x對應(yīng)元素

>? <? >=? <= == !=?? 計(jì)算比較棺聊,產(chǎn)生布爾型數(shù)組

?? ? ? ? ? 示例如下:

a=array([20,30,40,50])

b=arange(4)

打印b? array=([0,1,2,3])

c =a-b

打印 c? array=([20,29,38,47])

b**2

打印得 array([0,1,4,9])

10*sin(a)

打印得 array([9.12945251,-9.88031624,7.4511316,-2.62374854])

a<35

打印得 array([True,True,False,False],dtype = bool)

非數(shù)組的運(yùn)算可以利用ndarray類方法實(shí)現(xiàn)

通用函數(shù)(ufunc)--Nunpy提供常見的數(shù)學(xué)函數(shù)

如sin,cos和exp

在numpy里這些函數(shù)作用桉數(shù)組的元素運(yùn)算贞谓,產(chǎn)生一個(gè)數(shù)組作為輸出限佩。示例如下:

a =random.random((2,3))

打印結(jié)果:array([[0.52732678,0.92066148,0.25701814],[0.66596685,0.24443251,0.39027655]])

a.sum()

打印結(jié)果:3.0056823003535524

a.min()

打印結(jié)果:0.224443250574359088

a.max()

打印結(jié)果:0.92066148305911222

b = arange(12).reshape(3,4)

打印結(jié)果:array([[0,1,2,3],[4,5,6,7],[8,9,10,11]])

b.sum(axis=0)

打印結(jié)果:array([12,15,18,21])

b.min(axis = 1)

打印結(jié)果:array([0,4,8])

b.cumsum(axis = 1)

打印結(jié)果:array([[0,1,3,6],[4,9,15,22],[8,17,27,38]],dtype=int32)

索引、切片與迭代

索引:獲取數(shù)組中特定位置元素的過程

切片:獲取數(shù)組元素子集的過程

數(shù)組還可以被索引裸弦、切片和迭代祟同,示例如下:

a =arange(10)**3

打印結(jié)果:array([0,1,8,27,64,125,216,343,512,729],dtype=int32)

a[2]

打印結(jié)果:8

a[2:5]

打印結(jié)果:array([8,27,64],dtype=int32)

a[:6:2] = -1000

打印結(jié)果:array([-1000,1,-1000,27,-1000,125,216,343,512,729],dtype=int32)

a[::-1]
打印結(jié)果:array([729.512,343,216,125,-1000,27,-1000,1,-1000],dtype = int32)


矩陣運(yùn)算


Numpy對于多維數(shù)組的運(yùn)算,缺省情況下并不適用矩陣運(yùn)算理疙,對數(shù)組進(jìn)行矩陣運(yùn)算晕城,可調(diào)用相應(yīng)的函數(shù)。

numpy庫也提供了matrix類沪斟,使用matrix類創(chuàng)建的是矩陣對象广辰,他們的加減乘除運(yùn)算缺省采用矩陣方式計(jì)算,用法和matlab十分類似主之。

矩陣中更高級的一些運(yùn)算可以在numpy的線性代數(shù)子庫linalg中找到择吊。例如inv函數(shù)計(jì)算逆矩陣,solve函數(shù)可以求解多元一次方程組槽奕。

數(shù)據(jù)的csv文件存取

csv(comma-separated value,逗號分隔值)

產(chǎn)生是一種常見的文件格式几睛,用來存儲(chǔ)批量數(shù)據(jù)

np.savetxt(frame,array,fmt='%.18e',delimiter=None)

frame:文件、字符串或產(chǎn)生器粤攒,可以是.gz或.bz2的壓縮文件

array:存入文件的數(shù)組

fmt:寫入文件的格式所森,例如:%d?? %.2f? %.18e

delimiter:分割字符串囱持,默認(rèn)是任何格式

np.loadtxt(frame,dtype=np.float,delimiter=None,unpack=False)

frame:文件、字符串或產(chǎn)生器焕济,可以是.gz或.bz2的壓縮文件

dtype:數(shù)據(jù)類型纷妆,可選

delimiter:分割字符串,默認(rèn)是任何空格

unpack:如果true晴弃,讀入屬性將分別寫入不同變量

csv只能有效存儲(chǔ)一維和二維數(shù)組

np.savetxt()? np.loadtxt()只能有效存取一維和二維數(shù)組

多維數(shù)組的存取

a.tofile(frame,sep='',format='%s')

frame:文件掩幢、字符串

sep:數(shù)據(jù)分割字符串,如果是空串上鞠,寫入文件為二進(jìn)制

format:寫入數(shù)據(jù)的格式

np.fromfile(frame,dtype = float,count = -1,sep='')

frame:文件际邻、字符串

dtype:讀取的數(shù)據(jù)類型

count:讀入元素個(gè)數(shù),-1表示讀入整個(gè)文件

sep:數(shù)據(jù)分割字符串芍阎,如果是空串世曾,寫入文件為二進(jìn)制

需要注意

改方法需要讀取時(shí)知道存入文件時(shí)數(shù)組的維度和元素類型

a.tofile()和np.fromfile()需要配合使用

可以通過元數(shù)據(jù)文件來存儲(chǔ)額外信息

numpy的便捷文件存取

np.save(fname,array) 或 np.savez(fname,array)

fname:文件名,以.npy為擴(kuò)展名谴咸,壓縮擴(kuò)展名為.npz

array:數(shù)組變量

np.load(fname)

fname:文件名轮听,以.npy為擴(kuò)展名,壓縮擴(kuò)展名為.npz


numpy的隨機(jī)函數(shù)子庫?

numpy的rando子庫?? np.random.*

np.random.rand()????? np.random.randn()???? np.random.randint()

rand(d0,d1...,dn)???? 根據(jù)d0-dn創(chuàng)建隨機(jī)數(shù)數(shù)組寿冕,浮點(diǎn)數(shù)蕊程,[0,1],均勻分布

randn(d0,d1...,dn)? ? 根據(jù)d0-dn創(chuàng)建隨機(jī)數(shù)數(shù)組,標(biāo)準(zhǔn)正態(tài)分布

randint(low[,high,shape])?? 根據(jù)shape創(chuàng)建隨機(jī)整數(shù)或整數(shù)數(shù)組驼唱,范圍是[low,high]

seed(s)?????? 隨機(jī)數(shù)種子,s是給定的種子值

? ? ??????????????? 給隨機(jī)數(shù)對象一個(gè)種子值驹暑,用于產(chǎn)生隨機(jī)序列玫恳。

??????????????????? 對于同一個(gè)種子值的輸入,之后產(chǎn)生的隨機(jī)數(shù)序列也一樣优俘。

???????????????????? 通常是把時(shí)間秒數(shù)等變化值作為種子值京办,達(dá)到每次運(yùn)行產(chǎn)生的隨機(jī)系列都不一樣

???????????????????? seed() 省略參數(shù),意味著使用當(dāng)前系統(tǒng)時(shí)間生成隨機(jī)數(shù)

shuffle(a)?????????????? 根據(jù)數(shù)組a的第1軸進(jìn)行隨排列帆焕,改變數(shù)組x

permutation(a)??????? 根據(jù)數(shù)組a的第一軸產(chǎn)生一個(gè)新的亂序數(shù)組惭婿,不改變數(shù)組x

choice(a[,size,replace,p])??? 從一維數(shù)組a中以概率抽取元素,形成size形狀新數(shù)組replace表示是否可以重用元素叶雹,默認(rèn)為false


uniform(low,high,size)? 產(chǎn)生具有均勻分布的數(shù)組财饥,low起始值,high結(jié)束值折晦,size形狀

normal(loc,scale,size)?? 產(chǎn)生具有正態(tài)分布的數(shù)組钥星,loc均值,scale標(biāo)準(zhǔn)差满着,size形狀

poisson(lam,size)???????????? 產(chǎn)生具有泊松分布的數(shù)組谦炒,lam隨機(jī)事件發(fā)生率贯莺,size形狀


numpy的統(tǒng)計(jì)函數(shù)

sum(a,axis=None)???? 根據(jù)給定軸axis計(jì)算數(shù)組a相關(guān)元素之和,axis整數(shù)或元組

mean(a,axis=None)??? 根據(jù)給定軸axis計(jì)算組a相關(guān)元素的期望宁改,axis整數(shù)或元組

average(a,axis=None,weights=None)?? 根據(jù)給定軸axis計(jì)算數(shù)組a相關(guān)元素的加權(quán)平均值

std(a,axis=None)??????? 根據(jù)給定軸axis計(jì)算數(shù)組a相關(guān)元素的標(biāo)準(zhǔn)差

var(a,axis=None)??????? 根據(jù)給定軸axis計(jì)算數(shù)組a相關(guān)元素的方差

min(a)??? max(a)???? 計(jì)算數(shù)組a中元素的最小值缕探、最大值

argmin(a)??? argmax(a)????? 計(jì)算數(shù)組a中元素最小值、最大值的降一維后下標(biāo)

unravel_index(index,shape)????? 根據(jù)shape將一維下標(biāo)index轉(zhuǎn)換成多維下標(biāo)

ptp(a)??????????????? 計(jì)算數(shù)組a中元素最大值與最小值的差

median(a)?????????? 計(jì)算數(shù)組a中元素的中位數(shù)(中值)


numpy的梯度函數(shù)

np.gradient(f)?????? 計(jì)算數(shù)組f中元素的梯度还蹲,當(dāng)f為多維時(shí)爹耗,返回每個(gè)維度梯度

梯度:連續(xù)值之間的變化率,即斜率

xy坐標(biāo)軸連續(xù)三個(gè)x坐標(biāo)對應(yīng)的y軸值:a秽誊,b鲸沮,c玖详,其中啦吧,b的梯度是:(c-a)/2

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市叼耙,隨后出現(xiàn)的幾起案子最易,更是在濱河造成了極大的恐慌怒坯,老刑警劉巖,帶你破解...
    沈念sama閱讀 219,366評論 6 508
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件藻懒,死亡現(xiàn)場離奇詭異剔猿,居然都是意外死亡,警方通過查閱死者的電腦和手機(jī)嬉荆,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,521評論 3 395
  • 文/潘曉璐 我一進(jìn)店門归敬,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人鄙早,你說我怎么就攤上這事汪茧。” “怎么了限番?”我有些...
    開封第一講書人閱讀 165,689評論 0 356
  • 文/不壞的土叔 我叫張陵舱污,是天一觀的道長。 經(jīng)常有香客問我弥虐,道長扩灯,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 58,925評論 1 295
  • 正文 為了忘掉前任霜瘪,我火速辦了婚禮珠插,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘粥庄。我一直安慰自己丧失,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,942評論 6 392
  • 文/花漫 我一把揭開白布惜互。 她就那樣靜靜地躺著布讹,像睡著了一般琳拭。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上描验,一...
    開封第一講書人閱讀 51,727評論 1 305
  • 那天白嘁,我揣著相機(jī)與錄音,去河邊找鬼膘流。 笑死絮缅,一個(gè)胖子當(dāng)著我的面吹牛,可吹牛的內(nèi)容都是我干的呼股。 我是一名探鬼主播耕魄,決...
    沈念sama閱讀 40,447評論 3 420
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼彭谁!你這毒婦竟也來了吸奴?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,349評論 0 276
  • 序言:老撾萬榮一對情侶失蹤缠局,失蹤者是張志新(化名)和其女友劉穎则奥,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體狭园,經(jīng)...
    沈念sama閱讀 45,820評論 1 317
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡读处,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,990評論 3 337
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了唱矛。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片罚舱。...
    茶點(diǎn)故事閱讀 40,127評論 1 351
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖绎谦,靈堂內(nèi)的尸體忽然破棺而出馆匿,到底是詐尸還是另有隱情,我是刑警寧澤燥滑,帶...
    沈念sama閱讀 35,812評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站阿逃,受9級特大地震影響铭拧,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜恃锉,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,471評論 3 331
  • 文/蒙蒙 一搀菩、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧破托,春花似錦肪跋、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 32,017評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽谜洽。三九已至,卻和暖如春吴叶,著一層夾襖步出監(jiān)牢的瞬間阐虚,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 33,142評論 1 272
  • 我被黑心中介騙來泰國打工蚌卤, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留实束,地道東北人。 一個(gè)月前我還...
    沈念sama閱讀 48,388評論 3 373
  • 正文 我出身青樓逊彭,卻偏偏與公主長得像咸灿,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個(gè)殘疾皇子侮叮,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 45,066評論 2 355

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