2015-07-28 27 views
1

字符串我有以下3 variabel,它是多申,matkul和pertemuan加入3 variabel为1,在python

def base() 
    day = localtime.tm_wday 
    time = localtime.tm_hour 
    no = str(nomor) 
    dosen = cek_dosen(no) 
    if dosen == 'null': 
     no_dosen() 
    elif dosen != 'null': 
     ada_dosen() 
     matkul = cek_jadwal(day,time) 
     if matkul == 'null': 
      no_jadwal() 
     elif matkul != 'null': 
      ada_matkul() 
      pertemuan = cek_pertemuan(matkul) 
      print pertemuan 
      if pertemuan > 1: 
       cek_before(pertemuan) 
       filename = dosen,matkul,pertemuan 
       print filename 
      else: 
       filename = dosen,matkul,pertemuan 
       print filename 

我想使文件名是字符串,来自这些variabel,如果dosen = DOSEN1matkul = MATKUL1pertemuan = 1,这样filename = DOSEN1MATKUL11。我尝试filename = dosen, matkul, pertemuan,但输出是('DOSEN2', 'MATKUL2', '1L')。对不起,我的英文不好

+0

它可以通过文件名= dosen + matkul + str(pertemuan)来完成。如果dosen或matkul可能是整数而不是字符串,那么也将每个都包含在str()中 - 如果有疑问,可以用str()来包装一个字符串,没有伤害。 – 2015-07-28 07:55:59

回答

1

您可以使用join方法加入字符串。

你的前两项已经是字符串,你的第三项不是。所以你必须先将它转换为一个字符串。

filename = ''.join([dosen, matkul, str(pertemuan)]) 
+0

我尝试,但它有以下错误 TypeError:序列项目2:预期的字符串,长的发现 –

+0

@FadhlulrahmanAzis更新我的答案。试试看它是否有效。 – user38034

+0

邑,我已经尝试和工作,谢谢。 –

0

.join或。格式化使用任何字符串函数都会很好地工作。但你的对象也可以有方法这个