r File “ex8a.py”, line 2 x = %r %r % r %r ^ SyntaxError: invalid syntax print x 標(biāo)簽(空格分隔): python學(xué)習(xí)
---筆記
###1.# -- coding:utf=8 -- 忘記了這句,這句一定要在中文注釋前面打上,不然會(huì)報(bào)錯(cuò)
2.打印字符串“I had this thing.”,“That you can type up right.”,“But it didn't sing.”, “So I said goodnight.”逗號(hào)在這里不打印出來,起一個(gè)假想的連接作用。print 固定格式是 “print 加 變量名 加 % 加 (括號(hào)里面有內(nèi)容)”
3.print formatter % (True, False, False, True) #在屏幕上打印出四個(gè)單詞,為什么不用括起來打印
4.formatter = “%r %r %r %r” #將字符串賦值給formatter File “ex8.py”, line 3 formatter = 鈥?r %r %r %r鈥? #灝嗗瓧絎︿覆璧嬪€肩粰formatter
^
SyntaxError: invalid syntax 當(dāng)你把錯(cuò)誤修正好了,再去記下經(jīng)驗(yàn)教訓(xùn) “”””這是不一樣的
5.print 這是啥 print print print print print print print print print
6.print formatter % (formatter,formatter,formatter,formatter)#看一看結(jié)果是啥,我猜是四個(gè)單詞,或者變量名,“formatter*4”你這次猜錯(cuò)了,是‘%r %r %r %r’ ‘%r %r %r %r’ ‘%r %r %r %r’ ‘%r %r %r %r’
7.print “”
8.x =”%r %r % r %r” x = %r %r % r %% (1,2,3,4) print x % (“o,o,o,o”) print x % (“mmmmmmmmmm mmmmmmmm”,”mmjjjjjj,mmmm.”,”lllll.”,”sskdke”) print x % (x,x,x,x) x = “%r %r % r %r” print x % (1,2,3,4) 1 2 3 4 print x % (“one”,“fff”,“fffo,fffo”,“52d”) ‘one’ ‘fff’ ‘fffo,fffo’ ‘52d’ print x % (“mmmmmmmmmm mmmmmmmm”,“mmjjjjjj,mmmm.”,“l(fā)llll.”,“sskdke”) ‘mmmmmmmmmm mmmmmmmm’ ‘mmjjjjjj,mmmm.’ ‘lllll.’ 'sskdke' print x % (x,x,x,x) ‘%r %r % r %r’ ‘%r %r % r %r’ ‘%r %r % r %r’ ‘%r %r % r %r’ print x % (‘x’,‘x’,‘x’,‘x’) ‘x’ ‘x’ ‘x’ ‘x’ 沒加引號(hào),直接輸出,加了單雙引號(hào)輸出單引號(hào)加字符串,字符串之間用“,”隔開,注意中英文編碼的區(qū)別。
9.python單引號(hào)、雙引號(hào)和三雙引號(hào)的區(qū)別 python字符串通常有單引號(hào)(‘…’)、雙引號(hào)(“…”)、三引號(hào)(“”“…”“”)或(‘’‘…’‘’)包圍,三引號(hào)包含的字符串可由多行組成,一般可表示大段的敘述性字符串。在使用時(shí)基本沒有差別,但雙引號(hào)和三引號(hào)(“”“…”“”)中可以包含單引號(hào),三引號(hào)(‘’‘…’‘’)可以包含雙引號(hào),而不需要轉(zhuǎn)義
如: s1 = “hello,world” 如果要寫成多行,那么就要使用 (“連行符”)吧, 如:s2 = “hello,? world”
s2與s1是一樣的。如果你用3個(gè)雙引號(hào)的話,就可以直接寫了, 如:s3 = “”“hello, world,
hahaha.”“”, 那么s3實(shí)際上就是“hello,\nworld,\nhahaha.”, 注意“\n”,所以,如果你的字符串里\n很多,你又不想在字符串中用\n的話,那么就可以使用3個(gè)雙引號(hào)。而且使用3個(gè)雙引號(hào)還可以在字符串中增加注釋, 如:s3 = “”“hello, #hoho, this is hello, 在3個(gè)雙引號(hào)的字符串內(nèi)可以有注釋哦 world, #hoho, this is world hahaha.”“”
這就是3個(gè)雙引號(hào)和1個(gè)雙引號(hào)表示字符串的區(qū)別了,3個(gè)雙引號(hào)與1個(gè)單引號(hào)的區(qū)別也是和這個(gè)一樣的, 當(dāng)字符串需要加入引號(hào)時(shí),可采用單引號(hào)與雙引號(hào)互相嵌套使用 例如:print ‘test "’“test ”‘"’ –>> test “test” “test '”‘test "’“ –>> test ‘test’ 實(shí)際上python支持單引號(hào)是有原因的,下面我來比較1個(gè)單引號(hào)和1個(gè)雙引號(hào)的區(qū)別。當(dāng)我用單引號(hào)來表示一個(gè)字符串時(shí),如果要表示 Let's go 這個(gè)字符串,必須這樣: s4 = ‘Let's go’,注意沒有,字符串中有一個(gè)‘,而字符串又是用’來表示,所以這個(gè)時(shí)候就要使用轉(zhuǎn)義符? (,轉(zhuǎn)義符應(yīng)該知道吧), 如果你的字符串中有一大堆的轉(zhuǎn)義符,看起來肯定不舒服,python也很好的解決了這個(gè)問題, 如:s5 = ”Let's go“ 這時(shí),我們看,python知道你是用 ” 來表示字符串,所以python就把字符串中的那個(gè)單引號(hào) ' , 當(dāng)成普通的字符處理了,是不是很簡(jiǎn)單。對(duì)于雙引號(hào),也是一樣的,下面舉個(gè)例子 s6 = ‘I realy like “python”!’這就是單引號(hào)和雙引號(hào)都可以表示字符串的原因了。
10.%r調(diào)用rper函數(shù)打印字符串,repr函數(shù)返回的字符串是加上了轉(zhuǎn)義序列,是直接書寫的字符串的形式%s調(diào)用str函數(shù)打印字符串,str函數(shù)返回原始字符串
11.‘單引號(hào)輸出會(huì)轉(zhuǎn)義 ’ 當(dāng)然是單雙引號(hào)都有的情況下
12.python -m pydoc raw_input
13.習(xí)題十二講的是如何在raw_input(…)里加上注釋提示別人
14.promapt 錯(cuò)
是prompt
1st 是無效的SyntaxError: invalid syntax
%
15.script 腳本,在from sys import argv
script, filename = argv 里面不用用戶賦值,自動(dòng)定義為當(dāng)前文件名
15.嚴(yán)重錯(cuò)誤
txt_again.read
正確的是 txt_again()
txt = open(filename)
**> 16.如何直接用open read 留個(gè)問題**
**>txt_again.close()? 關(guān)閉文件**