鱼C论坛

 找回密码
 立即注册
查看: 2337|回复: 8

[已解决]字符串的问题

[复制链接]
发表于 2020-9-20 13:51:07 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
input 输入的总是一个字符串 那么请问 怎么把input输入的字符串的 数字和字母 分开到两个字符串里面?
最佳答案
2020-9-20 14:40:34
test = list(input("请输入:"))
str_num = ""
str_abc = ""
for i in test:
    if i.isalpha():
        str_abc+=i
    elif i.isalnum():
        str_num+=i


print(str_abc)
print(str_num)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复

使用道具 举报

发表于 2020-9-20 14:13:37 | 显示全部楼层
你想怎么分开
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-20 14:28:07 | 显示全部楼层

input 不是C语言的,我不会,交给你了
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-20 14:40:34 | 显示全部楼层    本楼为最佳答案   
test = list(input("请输入:"))
str_num = ""
str_abc = ""
for i in test:
    if i.isalpha():
        str_abc+=i
    elif i.isalnum():
        str_num+=i


print(str_abc)
print(str_num)
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 2 反对 0

使用道具 举报

发表于 2020-9-20 15:54:00 | 显示全部楼层

请问这么写哪里出了问题?
test=input("请输入字符串:")
test=list(test)
test_string=[]
test_digital=[]
for i in range(len(test)):
    if str(test[i].isdigit):
        test_digital.append(test[i])
    else:
        test_string.append(test[i])
print("你所输入的字符串中的非数字为:")
print (str("".join(map(str,test_string))))
print("你所输入的字符串中的数字为:")
print (str("".join(map(str,test_digital))))  
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-20 15:56:23 | 显示全部楼层
nnzp 发表于 2020-9-20 15:54
请问这么写哪里出了问题?

哥们你从c语言来的吧,我不方便运行,但看你这代码浓浓的c的味道
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-20 16:10:16 | 显示全部楼层
昨非 发表于 2020-9-20 15:56
哥们你从c语言来的吧,我不方便运行,但看你这代码浓浓的c的味道

对的,这个判断逻辑你看看
for i in range(len(test)):
    if test[i].isalnum():
        test_digital.append(test[i])
    elif test[i].isalpha():
        test_string.append(test[i])
判断列表中的每个元素,再添加到另一个列表中……
应该没问题……

想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-20 16:17:07 | 显示全部楼层
nnzp 发表于 2020-9-20 16:10
对的,这个判断逻辑你看看
判断列表中的每个元素,再添加到另一个列表中……
应该没问题……

没问题了
test=input("请输入字符串:")
test=list(test)
test_string=[]
test_digital=[]
for i in range(len(test)):
    if test[i].isdigit():
        test_digital.append(test[i])
    elif test[i].isalpha():
        test_string.append(test[i])
print(test_string)
print ("".join(map(str,test_string)))
print ("".join(map(str,test_digital)))
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2020-9-21 09:44:56 | 显示全部楼层
用正则表达式 非常简单就能完成
想知道小甲鱼最近在做啥?请访问 -> ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-1-11 02:57

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表