Rumah > Soal Jawab > teks badan
print('10/3 = ' + 10/3)
会直接报语法错误。
如果是Java语言则会打印出 10/3 = 3
, bagaimana saya boleh mencapai cetakan sedemikian melalui Python?
Saya mencari beberapa maklumat, dan mereka semua mengatakan bahawa Python's + hanya menyokong jenis yang sama, seperti print(True + False)
.
Bagaimana untuk melaksanakan fungsi rayuan?
淡淡烟草味2017-05-17 10:08:52
Ya, tetapi Python ialah bahasa yang ditaip dengan kuat dan tidak menyukai penukaran jenis automatik. Fakta bahawa anda boleh menggunakan '10/3 = ' + str(10/3)
这样子显式转换类型。另外 Python 能够 True + False
ialah isu warisan kerana menambah nilai bool tidak masuk akal.
Sudah tentu, Python mempunyai banyak cara yang baik untuk mengendalikan penggabungan rentetan. Berikut adalah rentetan perkembangan sejarah:
'10/3 = %s' % (10/3)
'10/3 = {}'.format(10/3) # 2.6+
f'10/3 = {10/3}' # 3.6+
PS: Untuk "rayuan", anda perlu melawan tuntutan mahkamah terlebih dahulu, dan kemudian jika anda tidak berpuas hati dengan penghakiman, anda boleh memfailkan "rayuan".
仅有的幸福2017-05-17 10:08:52
print('10/3 =', 10/3)
print('10/3 = {}'.format(10/3))
print('10/3 = %d'%(10/3))
天蓬老师2017-05-17 10:08:52
kelas myString(str):
def __add__(self,attr):
return ''.join([self.__str__(),'=',str(attr)])
ex=myString('10/3')
print(ex+10/3)
Saya harap ia tidak akan menyebabkan sebarang kekeliruan untuk anda; jika ia adalah ruby, anda tidak perlu menyesuaikan subkelas str, cuma ubah suainya terus pada str, kerana semuanya "terbuka", walaupun saya tidak tahu banyak. tentang ruby