Rumah > pembangunan bahagian belakang > Tutorial Python > Penyelesaian untuk menggesa TypeError(\'Tarikh akhir tidak disokong %r\' % tarikh akhir)

Penyelesaian untuk menggesa TypeError(\'Tarikh akhir tidak disokong %r\' % tarikh akhir)

王林
Lepaskan: 2024-03-01 13:20:45
ke hadapan
894 orang telah melayarinya

. Parameter jenis angka harus digunakan.

Penyelesaian untuk menggesa TypeError(\Tarikh akhir tidak disokong %r\ % tarikh akhir)Cara menyelesaikan

Penyelesaian adalah untuk menyemak nilai parameter tarikh akhir yang diserahkan kepada kaedah IOLoop.add_timeout() atau IOLoop.add_callback() dalam kod dan pastikan ia adalah nombor integer atau titik terapung.

Sebagai contoh, jika anda menghantar rentetan atau nilai bukan angka lain, tukarkannya kepada integer atau apungan.

Jika ralat disebabkan oleh sebab lain, sila berikan lebih banyak konteks dan coretan kod untuk membantu saya memberi anda jawapan yang lebih terperinci.

Contoh Penggunaan

Ya, berikut adalah contoh:

import tornado.ioloop

def my_callback():
print("callback called")

# This will work
deadline = tornado.ioloop.IOLoop.current().time() + 5.0
tornado.ioloop.IOLoop.current().add_timeout(deadline, my_callback)

# This will raise "TypeError("Unsupported deadline %r" % deadline)"
deadline = "5.0"
tornado.ioloop.IOLoop.current().add_timeout(deadline, my_callback)
Salin selepas log masuk
Dalam contoh pertama, kami melepasi apungan sebagai tarikh akhir, yang betul. Dalam contoh kedua, kami menghantar rentetan, yang akan menyebabkan ralat. Kita harus menukar tarikh akhir kepada jenis apungan.

rreeee

Dengan cara ini anda boleh mengelakkan ralat

Jika anda ingin menjalankan fungsi panggil balik pada satu ketika pada masa hadapan, anda boleh menggunakan kaedah IOLoop.add_timeout() , yang menerima cap masa sebagai parameter pertama, dan selepas itu cap masa tiba Jalankan fungsi panggil balik. Contohnya, jika anda ingin menjalankan fungsi panggil balik selepas 5 saat, anda boleh menggunakan kod berikut:

deadline = float("5.0")
tornado.ioloop.IOLoop.current().add_timeout(deadline, my_callback)
Salin selepas log masuk

Jika anda ingin menjalankan fungsi panggil balik dalam gelung acara seterusnya, anda boleh menggunakan kaedah IOLoop.add_callback().

rreeee

Cara lain ialah menggunakan kaedah IOLoop.call_later(), yang menerima beberapa saat sebagai parameter pertama dan menjalankan fungsi panggil balik selepas masa itu berlalu.

Sebagai contoh, jika anda ingin menjalankan fungsi panggil balik selepas 5 saat, anda boleh menggunakan kod berikut:

import tornado.ioloop

def my_callback():
print("callback called")

deadline = tornado.ioloop.IOLoop.current().time() + 5.0
tornado.ioloop.IOLoop.current().add_timeout(deadline, my_callback)

# Start the IOLoop
tornado.ioloop.IOLoop.current().start()
Salin selepas log masuk

Jika anda ingin menggunakan kaedah ini dalam senario yang lebih maju, anda boleh mendapatkan maklumat lanjut dalam dokumentasi Tornado.

Atas ialah kandungan terperinci Penyelesaian untuk menggesa TypeError(\'Tarikh akhir tidak disokong %r\' % tarikh akhir). Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:lsjlt.com
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan