欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

解决报错:TypeError: argument should be integer or bytes-like object, not ‘str‘

程序员文章站 2022-07-15 15:46:43
...
  1. 问题
    num_count = contents.count('The') 对文本计算某单词出现次数时,出现报错“TypeError: argument should be integer or bytes-like object, not ‘str’”
  2. 报错原因
    count()括号内需要byte类型,而不是str类型。(为什么这里不能用str而有些count()可以?- 存疑)
  3. 解决方法
    num_count = contents.count('The'.encode())用encode()把str类型变为byte类型。问题解决。

附1:问题截图
解决报错:TypeError: argument should be integer or bytes-like object, not ‘str‘
附2:原代码

with open('alice.txt', 'rb') as f_obj:
	contents = f_obj.read()
	num_count = contents.count('The')
	print(num_count)

附3:修改后的代码

with open('alice.txt', 'rb') as f_obj:
	contents = f_obj.read()
	num_count = contents.count('The'.encode())
	print(num_count)

参考:https://www.cnblogs.com/lepeCoder/p/7230570.html

相关标签: python巩固