随机执行字典中的键

问题描述

我正在使用Tweepy创建一个Twitter机器人,该机器人仅定期发送推文。我正在使用random.choice函数让它随机执行tweets。自创建以来,它一直运行良好,但现在我试图通过在推文中添加图片来对其进行修改。没有图片,我只需要一个简单的列表即可放入我的推文,但是我想如果要添加图片,则需要词典。 这是一些我一直试图做到的示例代码:

import random
import tweepy

dict = {"key1" : "KeyValue1.jpg","Key2" : "KeyValue2.jpg","Key3" : "KeyValue3.jpg"}

for d in dict:
    tweet = api.update_with_media(d,dict[d])
    print(tweet)

基本上就是它的外观。从技术上讲,该代码有效,但仅执行第一个键和键值。 update_with_media函数需要2个参数,第一个参数需要是jpg文件,第二个参数应该是tweet本身。

解决方法

import random 
import tweepy
        
d = {"key1" : "KeyValue1.jpg","Key2" : "KeyValue2.jpg","KeyValue3": "Key3.jpg"} 
    
tweet = api.update_with_media(random.choice(list(d.keys())),random.choice(list(d.values()))) 
print(tweet)
,

从字典中获取随机项:

import random

a = {'key1': 'sample','key2': 'sample2'}
b = random.choice([value for key,value in a.items()])
print(b)

尽管此时最好只使用一个列表

,

对于随机项目或密钥,值对遵循这种方法

import random
import tweepy

d = {"key1" : "KeyValue1.jpg","KeyValue3": "Key3.jpg"} 
  
res = key,val = random.choice(list(d.items())) 
tweet = api.update_with_media(str(res)) 
print(tweet)

  

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...