'str'对象不可调用站点[关闭]
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了'str'对象不可调用站点[关闭]相关的知识,希望对你有一定的参考价值。
当我执行代码时,我遇到了错误,我不知道为什么!我从一个页面中获取此代码,通常他们的代码应该可以工作,但它不起作用
for tweet2 in find:
file = open( 'tweets.txt', 'a' )
print( "name:", tweet2.author.name )
print( "Screen-name:", tweet2.author.screen_name )
print( "Tweet created :", tweet2.created_at )
print( "tweet:", tweet2.text )
print( "Retweeted:", tweet2.retweeted )
print( "language:", tweet2.lang )
print( "Location:", tweet2.user.location )
print( "Time-zone:", tweet2.user.time_zone )
print( "Geo:", tweet2.geo )
print( "Hashtages:", tweet2.entities.get( 'hashtags' ) )
print( "------------------------------------" )
file.write(
'Name:s
Screen-Name:s
Created_at:s
Tweet-Text:s
Retweeted:s
language:s
Location:s
Time_zone:'(
tweet2.author.name, tweet2.author.screen_name, tweet2.created_at, tweet2.text,
tweet2.retweeted ,tweet2.lang ,tweet2.user.location,tweet2.user.time_zone,tweet2.geo))
file.close()
-------------------------------
Tweet created : 2018-01-29 17:09:35
tweet2.lang ,tweet2.user.location,tweet2.user.time_zone,tweet2.geo))
tweet: Python for Beginners with Examples
TypeError: 'str' object is not callable
有什么建议?提前致谢
答案
将您的file.write()
功能更改为
file.write('Name:{}
Screen-Name:{}
Created_at:{}
Tweet-Text:{}
Retweeted:{}
language:{}
Location:{}
Time_zone:{}'.format(tweet2.author.name, tweet2.author.screen_name, tweet2.created_at, tweet2.text, tweet2.retweeted ,tweet2.lang ,tweet2.user.location,tweet2.user.time_zone))
另一答案
这是你的问题。
file.write(
'Name:s
Screen-Name:s
Created_at:s
Tweet-Text:s
Retweeted:s
language:s
Location:s
Time_zone:'(
tweet2.author.name, tweet2.author.screen_name, tweet2.created_at, tweet2.text,
tweet2.retweeted ,tweet2.lang ,tweet2.user.location,tweet2.user.time_zone,tweet2.geo))
这部分是一个字符串:
'Name:s
Screen-Name:s
Created_at:s
Tweet-Text:s
Retweeted:s
language:s
Location:s
Time_zone:'(
紧随其后,你有一个左括号。这是一个函数调用。您试图像函数一样调用该字符串。 Python正确地在这个BS上打电话给你。
我假设你想把其他值作为字符串的一部分写入文件,可能是你有s
的地方。这应该是%s
,你应该在字符串和值之间使用%
运算符。作为评论中的sng注释,您似乎也缺少占位符,也可能没有正确数量的值。作为第一次尝试,将该行更改为:
'Name:%s
Screen-Name:%s
Created_at:%s
Tweet-Text:%s
Retweeted:%s
language:%s
Location:%s
Time_zone:%s' % (
您也可以使用.format()
作为A Magoon建议;这是更新的方式。我建议%
,因为它看起来像你想要做的。
以上是关于'str'对象不可调用站点[关闭]的主要内容,如果未能解决你的问题,请参考以下文章
Python:不能在类中使用函数两次,TypeError:'list'对象不可调用,为什么? [关闭]
lambda and TypeError:'模块'对象不可调用[重复]
TypeError:使用Python Click库无法调用'str'对象