温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

random模块、字符串

发布时间:2020-06-08 04:09:35 来源:网络 阅读:278 作者:wx59f985b4c2ab5 栏目:编程语言

随机数:

random模块


import random
random.randint(1,2)   #[1,2]
random.randrange(1,2)   #[1,2)

random.choice(lst) #从一个列表中随机选择一个元素出来

random.shuffle(lst) #打乱列表(效率低)
random.sample(lst,#) 在lst中随机取#个样本,每个样本只能取1次,并输出列表


元组tuple :不可变的(与只读列表很像)

表示:
t1 = ()
t2 = tuple()
t3 = (1) #这个不是元组
t4 = (1,) #这个是,必须有逗号
t5 = (1,2,[1,2,3],'a')
t6 = tuple(lst)
t7 = tuple(range(4))
元组:一旦创建,不可改变
可以更改元组内的列表,只改变列表,但是地址(门牌号)不会改变

t8 = (1,)*5
(1,1,1,1,1)

如果要改:
l8 = list(t8) #转换成列表再改

index(t1)
count(#)


命名元组namedtuple #也是不能修改的
point = namedtuple('point',['x','y'])
p1 = point(3,4)
打印p1
point(x=3,y=4)

point类型是type (类)

例:
Student = nametuple('A','name,age')
tom = Student('tom',20)
打印tom
A(name='tom',age=20)

nametuple?? ##显示源码



冒泡法
从左至右,两两比较排列

优化思想:
如果在一次循环中没有发生交换,就是已经达到目标顺序,则不用再交换

字符串

x = 1
y = 4
s1 = f"{x}->{y}"
打印
{1}->{4}
s1可以被索引、迭代,但一旦定义,不可更改



连接列表
“。。”.join(['1','2','3']) 用。。连接列表中字符串
打印出:
‘1。。2。。3’
例如前面‘。。’改成\n可以换行

map(str,range(10)) 更改类型
map: 映射


s4 = ','.join('abcdef')

s4.split(',') #默认使用空白字符分割,尽量长的找空白字符,立即返回一个列表
括号内为切割分隔符
s5.split(maxsplit=2) #maxsplit:最大切割数
s5.rsplit(maxsplit=2) #从右向左切
s5.splitlines() 按换行符切,并不保留,()内加True保留换行符

s4.partition(',') #返回一个三元组
       #切一刀
        #保留分隔符
‘aBcD’.lower :全变小写
‘aBcD’.upper :全变大写
'aBcD'.swapcase() :大小写互换

s10.title()
s10.capitalize()
s10.center(30,'0') 居中,0填充
str(1).zfill(10)
'1'.ljust #左对齐
'1'.rjust #右对齐

'1'.replace('a','the',n) #把a换成the,执行n次,最后可不加
#如没有搜到,不替换,生成新的字符串

s1.replace(' ', ' \t).split().append('c') #链式编程


S.strip() #默认将两端空白字符去掉
() #去掉直到括号内的所有字符


S.index('very') #查找索引,从0开始,查不到报错
S.find('vectory') #返回负数表示没有找到,找到返回索引
S.rfind('v') #从右开始找索引

S.startswith('x',4,6) 判断字符串是否以x开头(后面可以指定区间),输出为bool
S.endswith('x',4,10) 判断是否x结尾,输出为bool


字符串格式化

%03d(f) #以×××数字(浮点型)打印,占用3个位置,用0补
%04s #以字符串类型打印,用空格补位

'my name is %s, i am %d' % (wayne,30) 后面只能跟一个,可以用元组



***重要

format #函数格式化字符串

'{} {} {}'.format(1,2,['a']) #{}表示一个参数,以字符串形式输出,可以溢出


'{2}{1}{0}'.format(1,2,[a])
打印出
[a]21

import datetime
d=datetime.datetime.now()
'{}'.format.(d)

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI