4. 數(shù)據(jù)類型 —— 字符串

字符串屬于標(biāo)量存儲(chǔ)尿这、不可改變、順序訪問的數(shù)據(jù)類型倦微。字符串屬于序列的一種,因此對(duì)字符串可行的序列操作對(duì)類似元組和列表同樣適用正压。

1. 字符串的創(chuàng)建

類似于數(shù)字類型的創(chuàng)建欣福,直接將字符串賦值給變量即可創(chuàng)建一個(gè)新的字符串對(duì)象。

>>> a = 'string'                # 使用單引號(hào)
>>> a = "string"                # 使用雙引號(hào)焦履,在 Python 中拓劝,單引號(hào)和雙引號(hào)沒有區(qū)別
>>> a = '''
... a
... string 
... block '''                   # 使用三引號(hào),字符串塊(三引號(hào)在某些情況下可以起到注釋掉不需要執(zhí)行的代碼的作用)
>>> a
'\na\nstring\nblock '
>>> a = ''
''                              # 空字符

對(duì)變量重新賦值一個(gè)新的字符串即可 “ 更新 ” 變量

>>> a = 'string1'
>>> a
'string1'
>>> a = 'string2'
>>> a
'string2'

2. 轉(zhuǎn)義字符

一個(gè)反斜線加一個(gè)單一字符嘉裤,可以表示一些通常情況下不可打印的字符郑临,這種組合稱為轉(zhuǎn)義字符。

>>> a = 'string1\nstring2'                # \n 代表換行符屑宠,雖然由兩個(gè)字符組成厢洞,但在最終表示中會(huì)被一個(gè)單一字符替代
>>> print a
string1
string2

常用的轉(zhuǎn)義字符包括:

轉(zhuǎn)義字符 代表含義
\n 換行
\t 橫向制表符(tab)
\\ 反斜線( \ )
' 單引號(hào)
" 雙引號(hào)
\u 后跟四位十六進(jìn)制數(shù),表示 Unicode 字符串

當(dāng)我們不需要對(duì)字符進(jìn)行轉(zhuǎn)義時(shí)典奉,可以使用原始字符串操作符 raw 字符串躺翻。在原始字符串中,所有的字符都是直接按照輸入的字符來使用卫玖,沒有轉(zhuǎn)義或不能打印的字符公你。使用 raw 只需要在字符串前加 r/R 即可。

>>> a = r'string1\nstring2'
>>> print a
string1\nstring2                # 輸出的結(jié)果和輸入一樣假瞬,沒有進(jìn)行轉(zhuǎn)義
>>> a
'string1\\nstring2'             # Python 自身在顯示 '\' 時(shí)也會(huì)使用轉(zhuǎn)義字符 '\\'
  • 注:在交互模式下 print a 和直接顯示 a 的區(qū)別:使用 print 可以顯示變量格式化以后的顯示效果陕靠,而直接輸入變量名則會(huì)顯示變量的值在 Python 內(nèi)部的表示形式。

3. Unicode 字符串

如果需要使用 Unicode 字符串時(shí)脱茉,可以在字符串前加 u/U 即可使用 Unicode 字符串

>>> a = u'abc'
>>> a
u'abc'
>>> a = u'\u1234'                 # 使用 \u 轉(zhuǎn)義字符剪芥,\u 后為十六進(jìn)制
>>> print a
?

4. 基本操作(適用于所有序列對(duì)象)

  • 比較操作

    字符串進(jìn)行比較操作時(shí)按照在 ASCII 或 Unicode 中的數(shù)值大小進(jìn)行比較

  • 連接操作

    可以使用 ' +' 操作符對(duì)字符串進(jìn)行連接

a = 'a'
b = 'b'
a + b
'ab'
```

  • 重復(fù)操作

    使用 '*' 操作符將字符串重復(fù) N 次

a = 'a'
a * 7
'aaaaaaa'
```

  • 成員操作

    in / not in 可以用于判斷一個(gè)字符或字符串是否出現(xiàn)在另一個(gè)字符串中

'ab' in 'abcd'
True
'ac' in 'abcd'
a = 'string1'
>>> a
'string1'
>>> a = 'string2'
>>> a
'string2'
### 2. 轉(zhuǎn)義字符 一個(gè)反斜線加一個(gè)單一字符,可以表示一些通常情況下不可打印的字符琴许,這種組合稱為轉(zhuǎn)義字符粗俱。
>>> a = 'string1\nstring2' # \n 代表換行符,雖然由兩個(gè)字符組成,但在最終表示中會(huì)被一個(gè)單一字符替代
>>> print a
string1
string2
常用的轉(zhuǎn)義字符包括: | 轉(zhuǎn)義字符 | 代表含義 | | ------------ | ------------ | | \n | 換行 | | \t | 橫向制表符(tab)| | \\\ | 反斜線( \ )| | \' | 單引號(hào) | | \" | 雙引號(hào) | | \u | 后跟四位十六進(jìn)制數(shù)寸认,表示 Unicode 字符串 | 當(dāng)我們不需要對(duì)字符進(jìn)行轉(zhuǎn)義時(shí)签财,可以使用原始字符串操作符 raw 字符串。在原始字符串中偏塞,所有的字符都是直接按照輸入的字符來使用唱蒸,沒有轉(zhuǎn)義或不能打印的字符。使用 raw 只需要在字符串前加 r/R 即可灸叼。
>>> a = r'string1\nstring2'
>>> print a
string1\nstring2 # 輸出的結(jié)果和輸入一樣神汹,沒有進(jìn)行轉(zhuǎn)義
>>> a
'string1\nstring2' # Python 自身在顯示 '' 時(shí)也會(huì)使用轉(zhuǎn)義字符 '\'
- 注:在交互模式下 `print a` 和直接顯示 `a` 的區(qū)別:使用 `print` 可以顯示變量格式化以后的顯示效果,而直接輸入變量名則會(huì)顯示變量的值在 Python 內(nèi)部的表示形式古今。 ### 3. Unicode 字符串 如果需要使用 Unicode 字符串時(shí)屁魏,可以在字符串前加 u/U 即可使用 Unicode 字符串
>>> a = u'abc'
>>> a
u'abc'
>>> a = u'\u1234' # 使用 \u 轉(zhuǎn)義字符,\u 后為十六進(jìn)制
>>> print a
?
### 4. 基本操作(適用于所有序列對(duì)象) - 比較操作 字符串進(jìn)行比較操作時(shí)按照在 ASCII 或 Unicode 中的數(shù)值大小進(jìn)行比較 - 連接操作 可以使用 ' +' 操作符對(duì)字符串進(jìn)行連接
>>> a = 'a'
>>> b = 'b'
>>> a + b
'ab'
- 重復(fù)操作 使用 '*' 操作符將字符串重復(fù) N 次
>>> a = 'a'
>>> a * 7
'aaaaaaa'
- 成員操作 in / not in 可以用于判斷一個(gè)字符或字符串是否出現(xiàn)在另一個(gè)字符串中
>>> 'ab' in 'abcd'
True
>>> 'ac' in 'abcd'
False
'ac' not in 'abcd'
True
```

5. 索引和切片(適用于所有的列表和對(duì)象)

序列對(duì)象從 0 開始進(jìn)行索引捉腥,通過指定元素索引或切片對(duì)序列對(duì)象中的元素進(jìn)行訪問氓拼,語法如下:squence[index]

>>> a = 'string'
>>> a[0]
's'                                  # 序列的索引從 0 開始
>>> a[5]
'g'                                  # 序列索引的最大值比序列的長度小 1 

除此之外,還可以使用 負(fù)索引抵碟,范圍是 -1 到序列的負(fù)長度桃漾。正負(fù)索引的區(qū)別在于正索引以序列的開始為起點(diǎn)( 0 ),負(fù)索引以序列的結(jié)束為起點(diǎn)( -1 )拟逮。負(fù)索引 + 序列長度 = 正索引

>>> a[-1]
'g'                                  # 負(fù)索引從 -1 開始
>>> a[-6]
'a'                                  # 負(fù)索引的最大值是序列的負(fù)長度撬统,正索引的最大值是長度 len(squence) - 1

如果在訪問序列的索引越界會(huì)引發(fā)一個(gè)異常:

>>> a[6]                                      # 正索引的最大值應(yīng)該是長度 - 1
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
IndexError: string index out of range

通過索引可以訪問指定偏移量的某一個(gè)元素,而切片操作則可用來訪問序列中指定的多個(gè)元素敦迄。切片操作只需要給出切片的開始和結(jié)束的索引值恋追,中間用 ' : ' 分隔開即可: squence [ start_index : end_index ]

>>> a[1:3]
'tr'                            # 切片會(huì)截取從起始索引到結(jié)束索引,但不包括結(jié)束索引
>>> a[:3]
'str'                           # 如果不指定起始索引罚屋,默認(rèn)為序列的開始
>>> a[1:]     
'tring'                         # 如果不指定結(jié)束索引几于,默認(rèn)到序列的結(jié)束
>>> a[:]
'string'                        # 需要指出的是,所有字符串的操作都相當(dāng)于創(chuàng)建了一個(gè)新的字符串沿后,通過這種方法可以對(duì)字符串進(jìn)行拷貝
>>> a[1:-1]
 'trin'                         # 在切片中同樣可以使用負(fù)索引

切片操作還有第三個(gè)參數(shù)沿彭,起到類似步長的作用。不指定時(shí)默認(rèn)為 1

>>> a[::2]
'srn'
>>> a[::-1]
'gnirts'                        # 可以通過這樣來獲得一個(gè)序列的倒序

切片不同于索引尖滚,不存在越界引起的異常

>>> a[-100:100]
'string'                        # 在切片中當(dāng)起始或結(jié)束索引越界會(huì)使用默認(rèn)值

在切片中使用 None

>>> a[:0]
''                              # 在結(jié)束索引使用 0 時(shí)會(huì)返回空字符串
>>> a[:None]
'string'                        # 使用 None 則會(huì)返回整個(gè)字符串
>>> a[None:]
'string'                        
>>> a[None:None]
'string'

6. 序列的一些內(nèi)建函數(shù)

對(duì)序列對(duì)象有一些通用且常用的內(nèi)建函數(shù):

  • len():返回序列中元素的長度
>>> len(a)
6                               # 返回字符串的長度
  • max()min():返回序列中的最大值和最小值
>>> max(a)
't'                             # 返回字符串元素中的最大值
>>> min(a)
'g'                             # 返回字符串元素中的最小值
  • sorted():對(duì)序列中的對(duì)象進(jìn)行排序
>>> sorted(a)
['g', 'i', 'n', 'r', 's', 't']
  • reversed():對(duì)列表中的所有元素反序輸出
>>> for  i in reversed(a):
...    print i,
g n i r t s
  • enumerate():生成一個(gè) enumerate 對(duì)象喉刘,該對(duì)象為每個(gè)元素的索引和值組成的元組
>>> for i in enumerate(a):
...     print i
...
(0, 's')
(1, 't')
(2, 'r')
(3, 'i')
(4, 'n')
(5, 'g')
  • zip():接受兩個(gè)序列參數(shù),生成一個(gè)列表漆弄,列表中的元素分別為由兩個(gè)參數(shù)按順序的兩個(gè)元素所組成的元組
>>> zip(a, a)
[('s', 's'), ('t', 't'), ('r', 'r'), ('i', 'i'), ('n', 'n'), ('g', 'g')]

7. 字符串類型函數(shù)

  • raw_input():可以使用給定的字符串提示用戶輸入并將輸入返回賦值給變量睦裳。
>>> a = raw_input("Please input something: ")    # 函數(shù)接受的字符串參數(shù)即為輸出在屏幕上提示用戶輸入的字符串
Please input something: string                   # 輸入字符串:string
>>>
>>> print a                                      # 上邊的輸入 string 已經(jīng)賦值給變量 a
string
  • chr()unichr():chr 接受一個(gè)ASCII 碼,即 0-255 之間的整數(shù)撼唾,返回對(duì)應(yīng)的字符廉邑。unichr 則接受一個(gè) Unicode 碼,返回對(duì)應(yīng)的 Unicode 字符

  • ord():ord 作為 chr 和 unichr 的對(duì)應(yīng)函數(shù),返回一個(gè)字符的 ASCII 或 Unicode 數(shù)值

>>> chr(97)
'a'                                        # 接受一個(gè) 0-255 的整數(shù)蛛蒙,返回對(duì)應(yīng)的ASCII 字符
>>> unichr(1234)
u'\u04d2'                                  # 接受一個(gè) 0-65535 的整數(shù)糙箍,返回對(duì)應(yīng)的Unicode 碼
>>> print unichr(1234)
?
>>> ord('a')
97                                         # 接受一個(gè) ASCII 字符,返回對(duì)應(yīng)的數(shù)值
>>> ord(u'\u04d2')
1234                                       # 接受一個(gè) Unicode 字符牵祟,返回對(duì)應(yīng)的數(shù)值
  • str()unicode():將參數(shù)轉(zhuǎn)換為字符串或 unicode 字符串
>>> str(123)
'123'                                      # 將數(shù)字 123 轉(zhuǎn)換為字符串
>>> unicode(123)
u'123'                                     # 將數(shù)字轉(zhuǎn)換為 unicode 字符串

8. 字符串內(nèi)建函數(shù)

  • string.strip():刪除 sting 字符串開頭和末尾的空格

a = '\tstring\n'
a.strip()
'string' # 將字符串前后空格都刪除深夯,lstrip() 和 rstrip() 分別刪除開頭和結(jié)尾的空格
```

  • string.split(str):以 str 為分隔符將字符串進(jìn)行分隔

a = 's t r i n g'
a.split(' ')
['s', 't', 'r', 'i', 'n', 'g'] # 以空格為分隔符將字符串進(jìn)行分隔
```

  • string.join(seq):以 string 為分隔符,將 seq 中的所有元素合并為一個(gè)新的字符串

a = ['s', 't', 'r', 'i', 'n', 'g']
' '.join(a)

>>> print a # 上邊的輸入 string 已經(jīng)賦值給變量 a
string
- __chr()__ 和 __unichr()__:chr 接受一個(gè)ASCII 碼诺苹,即 0-255 之間的整數(shù)咕晋,返回對(duì)應(yīng)的字符。unichr 則接受一個(gè) Unicode 碼收奔,返回對(duì)應(yīng)的 Unicode 字符 - __ord()__:ord 作為 chr 和 unichr 的對(duì)應(yīng)函數(shù)掌呜,返回一個(gè)字符的 ASCII 或 Unicode 數(shù)值
>>> chr(97)
'a' # 接受一個(gè) 0-255 的整數(shù),返回對(duì)應(yīng)的ASCII 字符
>>> unichr(1234)
u'\u04d2' # 接受一個(gè) 0-65535 的整數(shù)坪哄,返回對(duì)應(yīng)的Unicode 碼
>>> print unichr(1234)
?
>>> ord('a')
97 # 接受一個(gè) ASCII 字符质蕉,返回對(duì)應(yīng)的數(shù)值
>>> ord(u'\u04d2')
1234 # 接受一個(gè) Unicode 字符,返回對(duì)應(yīng)的數(shù)值
- __str()__ 和 __unicode()__:將參數(shù)轉(zhuǎn)換為字符串或 unicode 字符串
>>> str(123)
'123' # 將數(shù)字 123 轉(zhuǎn)換為字符串
>>> unicode(123)
u'123' # 將數(shù)字轉(zhuǎn)換為 unicode 字符串
### 8. 字符串內(nèi)建函數(shù) - __string.strip()__:刪除 sting 字符串開頭和末尾的空格
>>> a = '\tstring\n'
>>> a.strip()
'string' # 將字符串前后空格都刪除损姜,lstrip() 和 rstrip() 分別刪除開頭和結(jié)尾的空格
- __string.split(str)__:以 str 為分隔符將字符串進(jìn)行分隔
>>> a = 's t r i n g'
>>> a.split(' ')
['s', 't', 'r', 'i', 'n', 'g'] # 以空格為分隔符將字符串進(jìn)行分隔
- __string.join(seq)__:以 string 為分隔符饰剥,將 seq 中的所有元素合并為一個(gè)新的字符串
>>> a = ['s', 't', 'r', 'i', 'n', 'g']
>>> ' '.join(a)
's t r i n g' # 用空格將 a 中的元素合并成新的字符串
''.join(a)
'string' # 當(dāng)不指定 string 時(shí)殊霞,直接合并
```

  • string.find(sr):檢測(cè) str 是否在字符串中摧阅,如果時(shí)返回索引,否則返回 -1

a = 'strings'
a.find('s')
0 # 結(jié)果總是返回第一個(gè)找到的索引
a.find('a')
-1 # 沒有找到時(shí)返回 -1
```

  • string.index(str):與 find 類似绷蹲,但不存在時(shí)引發(fā)一個(gè)異常

a = 'strings'
a.index('s')
0 # 同樣返回第一個(gè) str 的索引
a.index('a') # 與 find 不同棒卷,str 不存在時(shí)引發(fā)一個(gè)異常
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: substring not found
```

  • string.count(str):返回 str 在字符串中出現(xiàn)的次數(shù)

a = 'strings'
a.count('s')
2
```

  • string.upper()string.lower():分別將字符串字符轉(zhuǎn)換為大寫和小寫
>>> a = 'String123'
>>> a.upper()
'STRING123'                             # 將字符串 a 中的所有字母大寫,非字母不變
>>> a.lower()
'string123'                             # 將字符串 a 中的所有字母小寫祝钢,非字母不變
  • string.partition(str):find() 和 split() 的結(jié)合比规,從 str 出現(xiàn)的第一個(gè)位置起,將 string 分成三元組 (string_pre_str, str, string_post_str)拦英, 如果不包含 str蜒什,string_pre_str = string

a = 'string'
a.partition('r')
('st', 'r', 'ing')
a.partition('a')
('string', '', '')
```

  • string.replace(str1,str2) :把 str1 替換為 str2

a = 'strings'
a.replace('s', 'x')
'xtringx' # 把 string 中所有的 str1 替換為 str2,可以指定替換的次數(shù)參數(shù)
a.replace('a', 'x')
'string' # string 中不包含 str1 時(shí)疤估,不做任何操作
```

更多關(guān)于字符串的內(nèi)建函數(shù)參考:String Method

9.字符串格式化

Python 中的字符串格式化操作灾常,類似于 C 語言中的 printf() 函數(shù)的字符串格式化,語法如下:

  1. 在 % 操作符的左側(cè)放置一個(gè)需要進(jìn)行格式化的字符串铃拇,這個(gè)字符串帶有一個(gè)或多個(gè)嵌入的轉(zhuǎn)換目標(biāo)钞瀑,都以 % 開頭。

  2. 在 % 操作符的右側(cè)放置一個(gè)或多個(gè)(元組)對(duì)象慷荔,這些對(duì)象會(huì)插入到左側(cè)需要進(jìn)行格式化的一個(gè)或多個(gè)轉(zhuǎn)換目標(biāo)的位置上去雕什。

>>> "That is %d %s bird!" % (1, 'little')
That is 1 little bird!

在上邊這個(gè)例子中,整數(shù) 1 替換在格式化字符串左側(cè)的 %d, 字符串 'little' 替換 %s贷岸,從而得到一個(gè)新的格式化了的字符串壹士。

如果不使用格式化字符串,我們可以使用多次字符串的合并和轉(zhuǎn)換來達(dá)到目的凰盔,但十分麻煩墓卦。

>>> "That is " + str(1) + " little " "bird !"
That is 1 little bird!

通常根據(jù)需要轉(zhuǎn)換的目標(biāo)不同,左側(cè) % 操作符后邊的符號(hào)也不相同户敬,常見的格式化代碼如下

代碼 意義
%s 字符串
%r 使用 repr 的字符串
%d 十進(jìn)制整數(shù)
%i 整數(shù)
%f 浮點(diǎn)十進(jìn)制數(shù)

從高級(jí)的應(yīng)用來說落剪,表達(dá)式左側(cè)的轉(zhuǎn)換目標(biāo)有一套完整的語法:

     `%[(name)][flag][width][.precision]typecode`

上表中的字符碼出現(xiàn)在目標(biāo)字符串的尾部,在 % 和字符碼之間尿庐,可以有以下操作:

  • 放置一個(gè)字典的鍵 [(name)]
  • 列出左對(duì)齊 -忠怖、正號(hào) + 和補(bǔ)零 0 的標(biāo)志位 [flag]
  • 給出數(shù)字的整體長度和小數(shù)點(diǎn)后的位數(shù)等 [width] [.precision]
>>> "***%d***%-6d***%06d***%+d***" % (123, 123, 123, 123)
'***123***123   ***000123***+123***'                           # %-6d 表示左對(duì)齊抄瑟,%06d 表示補(bǔ)零
>>> "***%.2f***" % (123.456)
***123.46***                                                    # %.2f 表示保留浮點(diǎn)數(shù)小數(shù)點(diǎn)后2位
>>> "That is %(number)d little %(name)s !" % {'number':1, 'name':'bird'}
That is 1 little bird !                                         # 使用字典進(jìn)行格式化

format() 方法:在 Python 2.6 和 3.0 以后的版本引入了一種新的格式化方法凡泣,format() 函數(shù)

>>> "That is {0} little {1} !".format(1, 'bird')
That is 1 little bird !
  • 格式化總是會(huì)返回新的字符串作為結(jié)果而不是對(duì)左側(cè)的字符串進(jìn)行修改,如果需要的話皮假,必須將格式化字符串賦值給一個(gè)變量來保存結(jié)果鞋拟。

  • 更多關(guān)于字符串格式化的參考:String format

更多關(guān)于字符串的參考:Sequence Type

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末,一起剝皮案震驚了整個(gè)濱河市惹资,隨后出現(xiàn)的幾起案子贺纲,更是在濱河造成了極大的恐慌,老刑警劉巖褪测,帶你破解...
    沈念sama閱讀 206,482評(píng)論 6 481
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件猴誊,死亡現(xiàn)場離奇詭異,居然都是意外死亡侮措,警方通過查閱死者的電腦和手機(jī)懈叹,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 88,377評(píng)論 2 382
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來分扎,“玉大人澄成,你說我怎么就攤上這事∥废牛” “怎么了墨状?”我有些...
    開封第一講書人閱讀 152,762評(píng)論 0 342
  • 文/不壞的土叔 我叫張陵,是天一觀的道長庵佣。 經(jīng)常有香客問我歉胶,道長,這世上最難降的妖魔是什么巴粪? 我笑而不...
    開封第一講書人閱讀 55,273評(píng)論 1 279
  • 正文 為了忘掉前任通今,我火速辦了婚禮粥谬,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘辫塌。我一直安慰自己漏策,他們只是感情好,可當(dāng)我...
    茶點(diǎn)故事閱讀 64,289評(píng)論 5 373
  • 文/花漫 我一把揭開白布臼氨。 她就那樣靜靜地躺著掺喻,像睡著了一般。 火紅的嫁衣襯著肌膚如雪储矩。 梳的紋絲不亂的頭發(fā)上感耙,一...
    開封第一講書人閱讀 49,046評(píng)論 1 285
  • 那天,我揣著相機(jī)與錄音持隧,去河邊找鬼即硼。 笑死,一個(gè)胖子當(dāng)著我的面吹牛屡拨,可吹牛的內(nèi)容都是我干的只酥。 我是一名探鬼主播,決...
    沈念sama閱讀 38,351評(píng)論 3 400
  • 文/蒼蘭香墨 我猛地睜開眼呀狼,長吁一口氣:“原來是場噩夢(mèng)啊……” “哼裂允!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起哥艇,我...
    開封第一講書人閱讀 36,988評(píng)論 0 259
  • 序言:老撾萬榮一對(duì)情侶失蹤绝编,失蹤者是張志新(化名)和其女友劉穎,沒想到半個(gè)月后她奥,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體瓮增,經(jīng)...
    沈念sama閱讀 43,476評(píng)論 1 300
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡怎棱,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 35,948評(píng)論 2 324
  • 正文 我和宋清朗相戀三年哩俭,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片拳恋。...
    茶點(diǎn)故事閱讀 38,064評(píng)論 1 333
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡凡资,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出谬运,到底是詐尸還是另有隱情隙赁,我是刑警寧澤,帶...
    沈念sama閱讀 33,712評(píng)論 4 323
  • 正文 年R本政府宣布梆暖,位于F島的核電站伞访,受9級(jí)特大地震影響,放射性物質(zhì)發(fā)生泄漏轰驳。R本人自食惡果不足惜厚掷,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 39,261評(píng)論 3 307
  • 文/蒙蒙 一弟灼、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧冒黑,春花似錦田绑、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,264評(píng)論 0 19
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至冬竟,卻和暖如春欧穴,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背泵殴。 一陣腳步聲響...
    開封第一講書人閱讀 31,486評(píng)論 1 262
  • 我被黑心中介騙來泰國打工苔可, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留,地道東北人袋狞。 一個(gè)月前我還...
    沈念sama閱讀 45,511評(píng)論 2 354
  • 正文 我出身青樓焚辅,卻偏偏與公主長得像,于是被迫代替她去往敵國和親苟鸯。 傳聞我的和親對(duì)象是個(gè)殘疾皇子同蜻,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 42,802評(píng)論 2 345

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

  • 本節(jié)要介紹的是Python里面常用的幾種數(shù)據(jù)結(jié)構(gòu)。通常情況下咸包,聲明一個(gè)變量只保存一個(gè)值是遠(yuǎn)遠(yuǎn)不夠的桃序,我們需要將一組...
    小黑y99閱讀 65,190評(píng)論 0 9
  • Spring Cloud為開發(fā)人員提供了快速構(gòu)建分布式系統(tǒng)中一些常見模式的工具(例如配置管理,服務(wù)發(fā)現(xiàn)烂瘫,斷路器媒熊,智...
    卡卡羅2017閱讀 134,599評(píng)論 18 139
  • 一句話介紹: 用程序模擬人登錄網(wǎng)頁進(jìn)行成績查詢的行為。 流程 使用工具 python2.7 pycharm(斷點(diǎn)調(diào)...
    fatfatEddy閱讀 2,820評(píng)論 0 9
  • 2017年3月11日,申請(qǐng)加入小灶群葛账,通過柠衅,進(jìn)預(yù)備群,進(jìn)正式群籍琳,一步步的雙向選擇菲宴,讓我看到了貓叔的負(fù)責(zé)魂贬,堅(jiān)定了加入...
    如白Gabrielle閱讀 308評(píng)論 9 18
  • 沒去過香港,我的香港在書里裙顽,在電影里付燥,在電視里。 東西文化撞擊出了特別的香港愈犹,這地方有殖民時(shí)期的建筑键科,有現(xiàn)代的高樓...
    復(fù)古劉海閱讀 249評(píng)論 2 8