为什么我无法计算" o_jumlah_harga",我将" o_jumlah_harga"" o_jumlah_harga"作为数组?

时间:2016-10-31 08:05:24

标签: python python-3.x

对不起我的问题或对我不好._。 在这里,我是新手,现在正在学习python 3.5!

我坚持这个问题a.k.a" a r r y y"。 有人可以帮我解决这个问题吗?

错误是

o_jumlah_harga.append(int(banyak_potong) * int(2500))
TypeError: int() argument must be a string, a bytes-like object or a number, not  'list'

代码是

input_banyak_jenis = int(input("Masukan Banyak Jenis yang ingin dibeli : "))
kode_potong=[]
banyak_potong=[]
o_tipe = []
o_harga = []
o_jumlah_harga =[]
i = 0
while i <= input_banyak_jenis:
    print("Jenis Ke - ", i)
    kode_potong.append(input("Kode Potong D/P/S : "))
    banyak_potong.append(int(input("Banyak Potong : ")))
    if kode_potong[i] == "D" or kode_potong[i] =="d":
        o_tipe.append("Dada")
        o_harga.append(2500)
        o_jumlah_harga.append(int(banyak_potong)*int(2500))
    elif kode_potong[i] == "P" or kode_potong[i] =="p":
        o_tipe.append("Paha")
        o_harga.append(2000)
        o_jumlah_harga.append(int(banyak_potong)*int(2000))
    elif kode_potong[i] == "S" or kode_potong[i] == "s":
        o_tipe.append("Sayap")
        o_harga.append(1500)
        o_jumlah_harga.append(int(banyak_potong)*int(1500))
    else:
        print("Harusnya anda memasukan yang ada di pilihan !!!!!")
        o_harga.append(0)
    i = i + 1

print("          Gerobak Fried Chicken           ")
print("------------------------------------------")
print("No.  Jenis     Harga     Banyak     Jumlah")
print("     Potong    Satuan    Potong     Harga ")
print("------------------------------------------")
a=0
while a<=input_banyak_jenis:
    print(o_tipe[a], o_harga[a], banyak_potong[a], o_jumlah_harga[a])
    a = a + 1

enter code here

2 个答案:

答案 0 :(得分:1)

您的问题不在于您无法计算o_jumlah_harga。这是你试图将列表中的banyak_potong转换为以下行中的int:

o_jumlah_harga.append(int(banyak_potong)*int(1500))

看看这个:

>>> a = []
>>> a.append('4')
>>> a.append('5')
>>> a.append('6')
>>> int(a)
TypeError: int() argument must be a string, a bytes-like object or a number, not 'list'

您需要提供索引:

>>> int(a[1])
5

答案 1 :(得分:0)

尝试一下。为我工作

您应该在变量banyak_potong中添加[i]

o_jumlah_harga.append(int(banyak_potong[i])*int(2500))

完整代码

input_banyak_jenis = int(input("Masukan Banyak Jenis yang ingin dibeli : "))
kode_potong=[]
banyak_potong=[]
o_tipe = []
o_harga = []
o_jumlah_harga =[]
i = 0
while i <= input_banyak_jenis:
    print("Jenis Ke - ", i)
    kode_potong.append(input("Kode Potong D/P/S : "))
    banyak_potong.append(int(input("Banyak Potong : ")))
    if kode_potong[i] == "D" or kode_potong[i] =="d":
        o_tipe.append("Dada")
        o_harga.append(2500)
        o_jumlah_harga.append(int(banyak_potong[i])*int(2500))
    elif kode_potong[i] == "P" or kode_potong[i] =="p":
        o_tipe.append("Paha")
        o_harga.append(2000)
        o_jumlah_harga.append(int(banyak_potong[i])*int(2000))
    elif kode_potong[i] == "S" or kode_potong[i] == "s":
        o_tipe.append("Sayap")
        o_harga.append(1500)
        o_jumlah_harga.append(int(banyak_potong[i])*int(1500))
    else:
        print("Harusnya anda memasukan yang ada di pilihan !!!!!")
        o_harga.append(0)
    i = i + 1

print("          Gerobak Fried Chicken           ")
print("------------------------------------------")
print("No.  Jenis     Harga     Banyak     Jumlah")
print("     Potong    Satuan    Potong     Harga ")
print("------------------------------------------")
a=0
while a<=input_banyak_jenis:
    print(o_tipe[a], o_harga[a], banyak_potong[a], o_jumlah_harga[a])
    a = a + 1