《笨辦法學python》練習,《笨辦法學python》練習13

2021-11-01 08:19:34 字數 3472 閱讀 7639

1樓:努力成為不熬夜的熊貓

首先,我沒有看到你的row_input()函式在**定義的,這是一個疑問;但是根據報錯,說明你的函式沒問題,問題只是在命令列引數。

從第13行開始解釋:

a, b, c, d = ar**

那麼ar**這個list中就要有4個元素對應等號前面的變數。

通用的做法是:

a = ar**[0]    #ar**[0]儲存的是指令碼名

b = ar**[1]    #ar**[1]儲存的是第一個引數

c = ar**[2]    #ar**[2]儲存的是第二個引數

依次類推。

你的報錯原因應該是沒有輸入命令列引數或者引數不夠,可以按照下面方法測試:

home:\work>python 你的指令碼.py 引數1 引數2 引數3 引數4

一般的,如果使用命令列引數,必須要判斷引數是否足夠和型別是否正確,例如:

import sys

'''一些函式

'''if __name__ == '__main__':

# 假如有4個引數

if len(sys.ar**) < 5:

print("缺少引數,提示引數型別和數量。")

exit()

else:

[a, b, c, d] = sys.ar**[1:5]

# 判斷每個引數型別,此處省略

# 執行函式體

2樓:百度網友

看你這語法貌似python2,到對應的環境裡去玩吧。

笨辦法學python 習題13 執行報錯

3樓:匿名使用者

執行的時候要加命令列引數,你要列印幾個就加幾個

script是這個指令碼本身的名字,其餘的你要加上

笨辦法學python 習題15報錯

4樓:你爸夏洛克

c:\users\admin>d:\python3.

6\learnpythonthehardway\第十五課.py d:\python3.

6\learnpythonthehardway\ex15.txt.txt

here's your file 'd:\\python3.6\\learnpythonthehardway\\ex15.txt.txt':

this is stuff i typed into a file

type the filename again:

> d:\python3.6\learnpythonthehardway\ex15.txt.txt

thisis stuff i typed into a file

第一次bai輸du入和第二次輸入都是需要輸zhi入路徑加dao.txt,這樣返回的結專果才是正確屬的。

5樓:l魯莊公

我也遇到了同樣的問題,網上也是搜不到答案,想了好幾種解決方案,終於版搞定了,首先權**是沒問題。主要是點用了ar**這個執行指令,在windows 輸入時如果是變數的話看不出來差別的,但是如果輸入的是檔案的話必須得輸入全路徑,和書上那樣輸入的就會報錯。

希望採納,友情提示一下,python練習的檔案最後不要有中文路徑。

6樓:匿名使用者

no such file or directory: 'ex15_sample.txt'

這提示是沒找到檔案,確認一下檔案是否存在,另外看看路徑是不是有問題。

7樓:心月夕

把ex15_sample.txt放到和ex15.py同一個目錄下就沒問題了

8樓:虹__橋

應該是沒有寫出ex15_sample.txt的存放路徑。如果ex15_sample.txt和習題15.py存放路徑是一致的,那麼改內

成這樣試試:容python d:\python\----python\習題15.py d:\python\----python\ex15_sample.txt

笨辦法學python 習題41 物以類聚 練習看不懂,請問怎麼做?

9樓:匿名使用者

該**表示一個框架,幾乎沒有實際內容,**分成兩類,以class開頭的是定義類,pass關鍵字表示什麼都不做。

後面的都是賦值,介紹其中兩個,其它可以類推:

rover=dog("rover")

將一個叫rover的物件定義為dog型別,並把它整個打包賦值給rover

cat/person/employee都是一樣的。

frank.pet=rover

呼叫的class person, self.pet=rover, self=frank。

ps:中文翻譯應該難理解有一些障礙,推薦看原版 learn python the hard way.pdf

python 笨辦法學python 習題38

10樓:

__init__方法在類的一個物件被建立時,馬上執行。這個方法可以用來對你的物件做一些你希望專的 初始化屬 。注意,這個名稱的開始和結尾都是雙下劃線。

建立def __init__(self,lyrics): 或者別的函式時候需要多加一個self變數:

如果不加self,lyrics= lyrics這樣的**意義就不明確了,它指的既可能例項的lyrics屬性,或者一個叫做lyrics的區域性變數。有了self.lyrics=lyrics你就知道這指的是例項的屬性self.

lyrics

11樓:smile無峰

物件導向初始bai值du

賦值aa = song(["they rally around the family",

"with pockets full of shells"])aa唱的歌詞

zhi就是那個數列

lyrics 歌詞的dao意思吧

笨辦法學python習題14的問題

12樓:匿名使用者

script,first,second,third=ar**

只要一個ar**就行了,不要四個

13樓:百度網友

寫成:script, first, second, third = ar**[0], ar**[1], ar**[2], ar**[3]

$python3 hello world1.py 1 2 3

python 笨辦法學python習題35

14樓:

if "0" in next or "1" in next:

如果你輸入數字不包含1,0則會man,輸入一個數字

15樓:小眼睛男生

你只是寫了一個方法,要呼叫這個方法gold_room(),才能執行你的程式