python报错 TypeError: an integer is required
生活随笔
收集整理的這篇文章主要介紹了
python报错 TypeError: an integer is required
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
問題描述:
在本地使用socket向NetAssist傳送數(shù)據(jù)的時候,執(zhí)行python文件后發(fā)現(xiàn)報出python 報錯TypeError: an integer is required錯誤
代碼:
1 #!/usr/bin/env python32 from socket import *3 udpSocket = socket(AF_INET, SOCK_DGRAM)4 destIp = input('enter ip:')5 destPort = input('enter port:')6 destData = input('enter data:')7 8 udpSocket.sendto(destData.encode('gb2312'),(destIp, destPort))執(zhí)行結(jié)果:
enter ip:192.168.162.1 enter port:8080 enter data:haha Traceback (most recent call last):File "udp-code.py", line 8, in <module>udpSocket.sendto(destData.encode('gb2312'),(destIp, destPort)) TypeError: an integer is required (got type str)產(chǎn)生原因:
通過查詢python文檔后,發(fā)現(xiàn)是傳遞的參數(shù)不符合socket.sendto()方法的要求
文檔描述:
s.sendto(string[,flag],address)
發(fā)送UDP數(shù)據(jù)。將數(shù)據(jù)發(fā)送到套接字,address是形式為(ipaddr,port)的元組,指定遠程地址。返回值是發(fā)送的字節(jié)數(shù)。
destPort的類型應該為int類型
修改代碼:
1 #!/usr/bin/env python32 from socket import *3 udpSocket = socket(AF_INET, SOCK_DGRAM)4 destIp = input('enter ip:')5 destPort = int(input('enter port:'))6 destData = input('enter data:')7 8 udpSocket.sendto(destData.encode('gb2312'),(destIp, destPort))結(jié)果:
- 總結(jié):
轉(zhuǎn)載于:https://www.cnblogs.com/AimeeCodeWorld/p/7998949.html
總結(jié)
以上是生活随笔為你收集整理的python报错 TypeError: an integer is required的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sqlserver的四种分页方式
- 下一篇: Java中 Iterable 和 Ite