笨方法學Python之一(原第六)

原文地址:http://learnpythonthehardway.org/book/ex6.html

本文只是爲練習英語與學習Python,非商業用途。

第六章:字符串與文本  
  即使你曾經寫過字符串,但你仍然不知道它做了什麼。在這一章,我會創建一系列的複雜變量來讓你看看他們到底是什麼。
首先,解釋一下字符串的含義。字符串通常是一些我們想展示給某人的文本,或者是你所編寫的程序的輸出。當你在文本的兩側使用 " (雙引號)或者 ' (單引號)的時候,Python就知道你把它們當做字符串。
當你把你想要展示的文本用字符串輸出時,你會經常看到這種情況:print加上你的字符串。
  字符串中可能含有格式控制字符,這一點想必你已經發現了。這個過程很簡單,就是把格式控制字符放字符串中,然後加上 %(百分號)字符和變量名。
唯一需要你注意的一點是如果你想在你字符串中加入多個格式控制符來輸出多個變量的話,你需要把多個變量放在()小括號內並用 ,逗號隔開。
這就像你在商店買早餐一樣,你會說,我想要牛奶,雞蛋,麪包和湯。在Python中也是這樣,你告訴它,(milk,eggs,bread,soup)。它就懂你的意思了,哦,他要輸出多個變量。
  接下來,我會敲出一系列的字符串,變量和格式控制字符,並且用print輸出他們。你可能會使用短的簡寫的變量名,但是程序員會用易懂直觀的變量名來節省你在用令人

困惑和難解的變量名的時間。所以,現在開始閱讀代碼和編寫他們吧。

代碼:

x = "There are %d types of people." % 10
binary = "binary"
do_not = "don't"
y = "Those who know %s and those who %s." % (binary, do_not)

print x
print y

print "I said: %r." % x
print "I also said: '%s'." % y

hilarious = False
joke_evaluation = "Isn't that joke so funny?! %r"

print joke_evaluation % hilarious

w = "This is the left side of..."
e = "a string with a right side."

print w + e

顯示結果:



實戰練習:
    1.閱讀這個程序並且爲程序的每一行編寫註釋來解釋該行代碼的含義
    2.找出在字符串中所有能插入字符串地方。這裏有四個地方
    3.你確定只有四處?你怎麼知道?可能我在說謊
    4.解釋爲什麼在字符串 w 和字符串 e 之間添加 + 能產生一個更長的字符串
答疑解惑:
    Q: %r 與 %s 有什麼不同?
    A: 使用 %r 來debug,因爲它會顯示變量原始的內容,但是 %s 會把內容輸出給用戶。
    Q: 我出現了一個錯誤,TypeError: not all arguments converted during string formatting.
    A:  你需要確保你的每一行代碼都跟我一樣。這個錯誤的原因是格式控制符的數量多於你要輸出的變量
回去在檢查一下你的代碼,找出哪個錯了。
    Q: 爲什麼你在一些字符串兩側加了單引號,而一些沒有加?
    A: 這很大程度上決定於格式,我通常會在雙引號之間的字符串中用單引號。看一下第十行,我就是這麼做的。


以上全文。

#coding=UTF-8
print "My name is WY "

s1="MY "
s2="name is Wy"
print s1+s2

age=20;
print "My age is %d"%age

print "My age is '%d'"%age #原樣輸出

s3="My age is "
s4="%d"
print s3+s4%age

print s3,age

s5='%d'
print s3+s5%age
a=0
print "AA",age,a,"QQ" 
print '''Ilike 
				Music'''
print "\\"  #輸入一個\
print r"\\" #輸入兩個


看到這是不是眼花繚亂,其實說形式多也不多,只要掌握本質。

就像吳軍老師說的,道與術。追求道纔是智慧。

對於上面輸出可以總結爲以下:

字符串(包含%-格式控制符)+%+變量(或常量)

字符串:我不管你是一個還是幾個,不管你有沒有變量名,你最後結果是包含%-格式控制符字符串就行

變量(或常量):不管你有沒有名字,只要與前面對應,多個加括號

字符串+  , +變量名+ ,+變量名+ ,+字符串


其實格式控制符與字符串還可以展開這裏先不闡述。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章