python 产生随机数,随机字符串

来源:互联网 发布:淘宝折800 编辑:程序博客网 时间:2024/05/01 16:56
python 产生随机数,随机字符串




import random


#随机整数:
print random.randint(1,50)


#随机选取0到100间的偶数:
print random.randrange(0, 101, 2)


#随机浮点数:

print random.random()
print random.uniform(1, 10)




#随机字符:
print random.choice('abcdefghijklmnopqrstuvwxyz!@#$%^&*()')




#多个字符中选取特定数量的字符:
print random.sample('zyxwvutsrqponmlkjihgfedcba',5)




#多个字符中选取特定数量的字符组成新字符串:
prin ''.join(random.sample(['z','y','x','w','v','u','t','s','r','q','p','o','n','m','l','k','j','i','h','g','f','e','d','c','b','a'], 5))




#随机选取字符串:
print random.choice(['剪刀', '石头', '布'])




#打乱排序
items = [1, 2, 3, 4, 5, 6, 7, 8, 9, 0]

print random.shuffle(items)



下面是实现python字符串反转的四种方法:


1. 切片


def rev(s):


return s[::-1]


这是采用切片的方法,设置步长为-1,也就是反过来排序


这种方法是最简洁的,也是最推荐的。


2. 这种方法与切片类似,不过比较麻烦


def rev(s):


str0 = ”
   l = len(s)-1
   while l >= 0:
       str0 += s[l]
       l -= 1
   return str0


 


这种方法是先设置一个str0的空变量,然后在s中从后往前取值,然后追加到str0中


3.列表


def rev(s):


a = list(s)
   a.reverse()
   return ”.join(a)


这种方法是采用列表的reverse方法,先将s转换为列表,然后通过reverse方法反转,然后在通过join连接为字符串


注意:这里注意区分列表的reverse和sort(或sorted)方法:


reverse是把列表方向排序;


sort(reverse=True)是按照某种顺序方向排序。


example:


>>> a=['a','c','b','d']
>>> b=['a','c','b','d']
>>> a.sort(reverse=True)
>>> b.reverse()
>>> a
['d', 'c', 'b', 'a']
>>> b
['d', 'b', 'c', 'a']


4. reduce


def rev(s):


return reduce(lambda x, y : y + x, s)