python-3.7 - 为什么我的代码返回 0?而不是大写字母和小写字母的数量?
问题描述
我正在尝试编写代码来计算字符串中有多少个大写和小写字符。这是我的代码。
我一直在尝试将其转换为字符串,但无法正常工作。
def up_low(string):
result1 = 0
result2 = 0
for x in string:
if x == x.upper():
result1 + 1
elif x == x.lower():
result2 + 1
print('You have ' + str(result1) + ' upper characters and ' +
str(result2) + ' lower characters!')
up_low('Hello Mr. Rogers, how are you this fine Tuesday?')
我希望我的结果能够计算出上下字符。现在我得到“你有 0 个大写字符和 0 个小写字符!”。
结果 1 和结果 2 不相加。
解决方案
问题出在线路result1 + 1
和result2 + 1
. 这是一个表达式,但不是一个赋值。换句话说,您增加计数器,然后增加的值无处可去。
解决方案是将赋值运算符工作=
到某个地方。
推荐阅读
- c# - Unity Moving Player Leg Multiplayer
- angular - Angular 和 Bootrap 4:网格被 ngFor 破坏
- java - Java将Optional<>映射到对象而不是另一个对象的现有方法?
- tsql - Access or general query question about grouping 2 lines of data where
- sql - 无法授予自己访问我在 Oracle 中创建的表的权限
- linux - Cannot copy contents of Wordpress directory to the web server root
- c++ - 在 SFML 中加载纹理错误 (0x77ADEB85(ntdll.dll)) 错误
- javascript - Vanilla javascript,不是 CSS 或 jQuery,淡入淡出图像变化
- cefsharp - 使用 CEFSharp ILifeSpanHandler 接口处理弹出窗口
- javascript - HTML 格式选择在 V1.30 中消失了