当字母和数字在随机字符串中的某些位置时,我必须进行加减值,如下所示:
1。字符串中的字母=+1
2个。大写字母开头字符串=+1
3岁。字符串内或结尾的大写字母=-2
4岁。字符串中的数字或其他符号=-2,每行中的每个字母扣除.25 字符串。
我可以得到随机的字符串,但是我很难用“x”来添加这些值。你知道吗
import random
import math
x=0
def randstr(localX):
a = 'abcdefghijklmnopqrstuvwxyz'
b = 'ABCDEFGHIJKLMNOPQRSTUVWXYZ'
c = '0123456789'
d = 'abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789'
rs = (random.choice(d)) + (random.choice(d)) + (random.choice(d)) + (random.choice(d)) + (random.choice(d)) + (random.choice(d)) + (random.choice(d)) + (random.choice(d)) + (random.choice(d)) + (random.choice(d))
print rs
if rs[0] in b:
localX += 1
if rs[0] in a:
localX += 1
elif rs[1] in a:
localX += 1
elif rs[2] in a:
localX += 1
elif rs[3] in a:
localX += 1
elif rs[4] in a:
localX += 1
elif rs[5] in a:
localX += 1
elif rs[6] in a:
localX += 1
elif rs[7] in a:
localX += 1
elif rs[8] in a:
localX += 1
elif rs[9] in a:
localX += 1
if rs[1] in b:
localX -= 2
elif rs[2] in b:
localX -= 2
elif rs[3] in b:
localX -= 2
elif rs[4] in b:
localX -= 2
elif rs[5] in b:
localX -= 2
elif rs[6] in b:
localX -= 2
elif rs[7] in b:
localX -= 2
elif rs[8] in b:
localX -= 2
elif rs[9] in b:
localX -= 2
if rs[0] in c:
localX -= 2
if rs [1] in a:
localX -= .25
elif rs [2] in a:
localX -= .25
elif rs [3] in a:
localX -= .25
elif rs [4] in a:
localX -= .25
elif rs [5] in a:
localX -= .25
elif rs [6] in a:
localX -= .25
elif rs [7] in a:
localX -= .25
elif rs [8] in a:
localX -= .25
elif rs [9] in a:
localX -= .25
elif rs[1] in c:
localX -= 2
if rs [0] in a:
localX -= .25
elif rs [2] in a:
localX -= .25
elif rs [3] in a:
localX -= .25
elif rs [4] in a:
localX -= .25
elif rs [5] in a:
localX -= .25
elif rs [6] in a:
localX -= .25
elif rs [7] in a:
localX -= .25
elif rs [8] in a:
localX -= .25
elif rs [9] in a:
localX -= .25
elif rs[2] in c:
localX -= 2
if rs [0] in a:
localX -= .25
elif rs [1] in a:
localX -= .25
elif rs [3] in a:
localX -= .25
elif rs [4] in a:
localX -= .25
elif rs [5] in a:
localX -= .25
elif rs [6] in a:
localX -= .25
elif rs [7] in a:
localX -= .25
elif rs [8] in a:
localX -= .25
elif rs [9] in a:
localX -= .25
elif rs[3] in c:
localX -= 2
if rs [0] in a:
localX -= .25
elif rs [1] in a:
localX -= .25
elif rs [2] in a:
localX -= .25
elif rs [4] in a:
localX -= .25
elif rs [5] in a:
localX -= .25
elif rs [6] in a:
localX -= .25
elif rs [7] in a:
localX -= .25
elif rs [8] in a:
localX -= .25
elif rs [9] in a:
localX -= .25
elif rs[4] in c:
localX -= 2
if rs [0] in a:
localX -= .25
elif rs [1] in a:
localX -= .25
elif rs [2] in a:
localX -= .25
elif rs [3] in a:
localX -= .25
elif rs [5] in a:
localX -= .25
elif rs [6] in a:
localX -= .25
elif rs [7] in a:
localX -= .25
elif rs [8] in a:
localX -= .25
elif rs [9] in a:
localX -= .25
elif rs[5] in c:
localX -= 2
if rs [0] in a:
localX -= .25
elif rs [1] in a:
localX -= .25
elif rs [2] in a:
localX -= .25
elif rs [3] in a:
localX -= .25
elif rs [4] in a:
localX -= .25
elif rs [6] in a:
localX -= .25
elif rs [7] in a:
localX -= .25
elif rs [8] in a:
localX -= .25
elif rs [9] in a:
localX -= .25
elif rs[6] in c:
localX -= 2
if rs [0] in a:
localX -= .25
elif rs [1] in a:
localX -= .25
elif rs [2] in a:
localX -= .25
elif rs [3] in a:
localX -= .25
elif rs [4] in a:
localX -= .25
elif rs [5] in a:
localX -= .25
elif rs [7] in a:
localX -= .25
elif rs [8] in a:
localX -= .25
elif rs [9] in a:
localX -= .25
elif rs[7] in c:
localX -= 2
if rs [0] in a:
localX -= .25
elif rs [1] in a:
localX -= .25
elif rs [2] in a:
localX -= .25
elif rs [3] in a:
localX -= .25
elif rs [4] in a:
localX -= .25
elif rs [5] in a:
localX -= .25
elif rs [6] in a:
localX -= .25
elif rs [8] in a:
localX -= .25
elif rs [9] in a:
localX -= .25
elif rs[8] in c:
localX -= 2
if rs [0] in a:
localX -= .25
elif rs [1] in a:
localX -= .25
elif rs [2] in a:
localX -= .25
elif rs [3] in a:
localX -= .25
elif rs [4] in a:
localX -= .25
elif rs [5] in a:
localX -= .25
elif rs [6] in a:
localX -= .25
elif rs [7] in a:
localX -= .25
elif rs [9] in a:
localX -= .25
elif rs[9] in c:
localX -= 2
if rs [0] in a:
localX -= .25
elif rs [1] in a:
localX -= .25
elif rs [2] in a:
localX -= .25
elif rs [3] in a:
localX -= .25
elif rs [4] in a:
localX -= .25
elif rs [5] in a:
localX -= .25
elif rs [6] in a:
localX -= .25
elif rs [7] in a:
localX -= .25
elif rs [8] in a:
localX -= .25
return rs
return localX
randstr(localX)
为了让函数在全局范围内影响x的值,必须在全局范围内初始化x。你知道吗
现在,它正在函数的本地范围内初始化。要么返回x的值,要么在全局范围内初始化它(。。在调用函数之前,例如:
选项0:
选择1:(更好)
很明显,我认为你的代码还有其他问题,因为完全没有循环,这确实需要解决,但我在这里推断你是一个学生,正在学习。你知道吗
是你应该在绳子上循环的方式
一些能起作用的例子。请注意,代码应该改为使用regex,而且字符串的生成方式很糟糕,但是这与最初的答案不同,对于OP来说不会太复杂
首先让我说,你正在学习编写软件,这很好,我认为Python是初学者的完美语言。这听起来像是你在教自己,跳进去弄脏你的手是一个很好的学习方法。你知道吗
然而,你需要反思你的时间是如何在学习中得到最好的利用的。当你刚开始的时候,最大的问题往往是不知道“问什么才是正确的问题?”如果你从一开始就没有听说过
for
循环,你怎么知道要读一本关于for
循环的教程呢?你知道吗有两种解决方案:
1)从一些指导性教程开始,以便您快速了解最常见的语言功能。如果你掌握了基本的知识,你真的会节省很多时间。你知道吗
2)学会认识到什么时候做某事“应该有更好的方法”。如果你在执行一项任务时要付出很多努力,通常有更好的方法。例如,当您必须反复键入相同的代码(或复制粘贴代码块,在这里和那里更改位)时,您可以尝试搜索“how can I reduce copy pasting in code”或“how can I reduce code duplication”。当然,这只是一个例子,但是对于程序员来说,学习何时查阅文档是一项非常重要的技能。你知道吗
一旦你觉得自己学到了一点知识,你的程序就会很快改进。以下是一些改进现有代码的技巧:
在
string
模块中有一些预定义的字符串可以提高代码的可读性下面是一个简单的
for
循环的示例另一个包含每个字符的索引:
这里有一个很好的引用:
当然,这并不意味着你不应该努力工作,但要聪明地知道什么时候你可以节省自己的时间。你知道吗
相关问题 更多 >
编程相关推荐