| 网站首页 | 业界新闻 | 小组 | 威客 | 人才 | 下载频道 | 博客 | 代码贴 | 在线编程 | 编程论坛
欢迎加入我们,一同切磋技术
用户名:   
 
密 码:  
共有 1413 人关注过本帖
标题:关于判断和写入列表的问题
取消只看楼主 加入收藏
ilsoviet1917
Rank: 2
等 级:论坛游民
帖 子:103
专家分:26
注 册:2010-5-11
结帖率:84.21%
收藏
已结贴  问题点数:20 回复次数:2 
关于判断和写入列表的问题
程序代码:
dicts = {'a':'1',
         'b':'2',
         'c':3,
         '1':'a',
         '2':'b',
         '3':'c',}

string = input('str: ')
re = []


如果输入abc就显示123,如果输入123就显示Oa、Ob、Oc。结果输入列表re
在不改变字典的值的情况下,“Oa、Ob、Oc”的输出怎么实现呢?

如果1、2、3这三个键的类型是Int,通过isdigit或isalpha来分别判断是不是可以实现呢?

再追加一个问题,如果有'ac':666,在控制台输入键,打印值,怎么在输入'ac'后打印的是666而不是13呢?

[此贴子已经被作者于2021-8-13 11:16编辑过]

搜索更多相关主题的帖子: 列表 判断 写入 输入 打印 
2021-08-13 10:58
ilsoviet1917
Rank: 2
等 级:论坛游民
帖 子:103
专家分:26
注 册:2010-5-11
收藏
得分:0 
以下是引用古123在2021-8-13 12:41:19的发言:


string = input('str:')
if string in ['1','2','3']:
    print(f'0{dicts[string]}')
else:
    print(f'{dicts[string]}')
后一个问题我猜测你是读取一个字符得到在dicts中的值所以会出现'a''c'连起来'1''3'。
在python中正确读取字典语法是 字典名[键] 也就是比如在dicts里读取'ac'即dicts['ac']


if string in ['1','2','3']:
    print(f'0{dicts[string]}')
如果字典里只有1、2、3这三个键还行,如果是好多个键值对呢?
还有第二个回答没看太懂,能举个例子吗?
2021-08-16 14:53
ilsoviet1917
Rank: 2
等 级:论坛游民
帖 子:103
专家分:26
注 册:2010-5-11
收藏
得分:0 
回复 4楼 古123
追加一个问题,之前您提到的
if string in ['1','2','3']:
    print(f'0{dicts[string]}')
可以使用f''格式化输出,如果我想输入“123”输出0123呢?就是仅仅在数字字符串首位加一个0.

str = input('str:')
re = []
for s in str:
    if s.isdigit():
        re.append(f'0{dicts[s]}')

这种办法不行,这种办输入123,输出的是010203

[此贴子已经被作者于2021-8-25 17:24编辑过]

2021-08-25 17:17
快速回复:关于判断和写入列表的问题
数据加载中...
 
   



关于我们 | 广告合作 | 编程中国 | 清除Cookies | TOP | 手机版

编程中国 版权所有,并保留所有权利。
Powered by Discuz, Processed in 0.049917 second(s), 9 queries.
Copyright©2004-2024, BCCN.NET, All Rights Reserved