标题:在这里向python大神们求教一个小问题
只看楼主
f2001927
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2010-12-23
结帖率:0
已结贴  问题点数:20 回复次数:15 
在这里向python大神们求教一个小问题

我最近在研究python语言,在看完mooc上的温度转换的python实力后,想结合自己工作情况编写一个python语言
因为本人是从事路桥方向所以主要是涉及土方的填挖事情。
程序代码:
#TempConvert.property
TempStr = input("请输入带有符号的挖土方工程数量:")
if TempStr[-1] in ['W','w']:
    C = (eval(TempStr[0:-1]) )
    print("挖普通土{:.2f}方".format(C))
else:    print("输入格式错误")

这个是我自己在温度转换的代码上进行修改的,因为运行起来总是提示错误。
我的理想状态就是
录入:12普通土
然后就在下面显示:“请输入带有符号的挖土方工程数量:12方普通土”
请指点下我这个语言错误的地方啊

我想问下能不能将以上这个语言修改为我录入的内容是“12方或12m3”啊?

[此贴子已经被作者于2019-8-6 10:09编辑过]

搜索更多相关主题的帖子: python 语言 TempStr 输入 错误 
2019-08-06 10:04
f2001927
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2010-12-23
得分:0 
2019-08-06 10:11
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:20 
回复 2楼 f2001927
说说你想实现的功能,eval 不是那么用的

DO IT YOURSELF !
2019-08-06 10:45
f2001927
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2010-12-23
得分:0 
回复 3楼 wp231957
分别提示录入普通土的数量、松土、硬土的数量
这时候录入数量的习惯有以下三种:“12方”或“12m3”、“12m3”这三种情况
最终显示结果就是“挖土方数量=普通土+松土+硬土”
挖石方这块我自己研究摸索
2019-08-06 10:51
f2001927
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2010-12-23
得分:0 
回复 3楼 wp231957 关于挖方土方的计算

逻辑关系如下:
挖方=挖土方+挖石方
挖土方=挖普通土+挖松土+挖硬土
的合计
挖石方我自己通过挖土方的方式自己修改下。
2019-08-06 10:53
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
回复 4楼 f2001927
你还是没说明白
比如 你输入12方  想让程序输出神马
比如你输入30M3 你想让程序输出神马

DO IT YOURSELF !
2019-08-06 10:55
f2001927
Rank: 1
等 级:新手上路
帖 子:10
专家分:0
注 册:2010-12-23
得分:0 
回复 6楼 wp231957
录入“12方”或“12m3”或“12m3”
经过python处理后直接显示12方即可
2019-08-06 10:59
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
回复 7楼 f2001927
>>> tempstr = input("请输入带有符号的挖土方工程数量:"))
请输入带有符号的挖土方工程数量:12方
>>> print(tempstr)
12方
>>>

DO IT YOURSELF !
2019-08-06 11:02
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
回复 7楼 f2001927
tempstr = input("请输入带有符号的挖土方工程数量:")
if tempstr[-1:]=="方" :
    print(tempstr[0:-1],"方")
elif  tempstr[-2:]=="m3"  or tempstr[-2:]=="M3" :
    print(tempstr[0:-2],"方")
else:
    print("error")   

DO IT YOURSELF !
2019-08-06 11:08
wp231957
Rank: 20Rank: 20Rank: 20Rank: 20Rank: 20
来 自:神界
等 级:版主
威 望:422
帖 子:13681
专家分:53296
注 册:2012-10-18
得分:0 
回复 7楼 f2001927
e:\pytest>python ex28.py
请输入带有符号的挖土方工程数量:12方
12 方

e:\pytest>python ex28.py
请输入带有符号的挖土方工程数量:12m3
12 方

e:\pytest>python ex28.py
请输入带有符号的挖土方工程数量:舒服撒
error

DO IT YOURSELF !
2019-08-06 11:09



参与讨论请移步原网站贴子:https://bbs.bccn.net/thread-496251-1-1.html




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

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