一起学python 三 --字符串详解,for循环
Posted chenzhiming
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了一起学python 三 --字符串详解,for循环相关的知识,希望对你有一定的参考价值。
1.整型
n = 56 print(n.bit_length()) #查看值用几位(bit)
# python2 中有长整型 long
# python3 中全都是整型
2.bool
True False
print(boll(num))
#非0数字输出Ture 数字0输出False
所有空的都是False
0,None,[],{},(),""
print(int(True)) 1 print(int( False)) 0
## 字符串转布尔值的时候,只要不为空就是Ture
3.字符串详解
name=‘alex,wusir‘
#只要用特殊字符隔开就能分解认为是多个单词(中文也是特殊字符)
1) 每个单词的首字母大写
s1 = name.title()
print(s) #Alex,Wusir
2) 只有第一个首字母大写
s2 = name.capitalize() #Alex,wusir
3) 全部大写
s3 = name.upper() #ALEX,WUSIR
4) 全部小写
s4 = name.lower() #wlex,wusir
#应用场景
yzm = ‘o98K‘
y_zm = input("输入验证码(‘o98K‘):")
if yzm.upper() == y_zm.upper():
print(‘验证码正确‘)
else:
print(‘验证码错误‘)
5) 统计内容个数(类似Word查找文字个数)
s5 = name.count(‘w‘) #1
6)切片
s6 = ‘pythonNB‘ print(s[0:3]) print(s[2]) print(s[-3:-1:1]) print(s[2:8]) print(s[1:]) print(s[:5:2]) print(s[1:6:2]) print(s[:]) print(s[3::2]) print(s[-5::-3])
总结: 下标(索引)
从左往右 0开始 从右往左 -1 开始
从左往右 [起始位置:终止位置] 如果[-1:-4] 这样可以取到内容吗? 是不可以的
[a:b:c] [a:b]的方向要与c 的方向一致[-1:-4:-1]可取到内容
步长(扯蛋) [起始位置:终止位置:步长] (方向) 默认使用是1 也就是从左往右
想要从右往左 步长写为 -1
可以一次性跨多个(例如我们写的步长为2,3,4,5)
7) s7 = name.find("m") # 查找索引 查找不到返回-1
print(s7)
s8 = name.index(‘m‘) # 查找索引 查找不到就报错
print(s8)
8)居中
s9 = name.center(,"") # 居中 第一个放数字,第二个放要填充的内容
9)分割
name = ‘al ex‘
s10 = name.split() # 分割 ############## 非常非常重要
()为空,默认使用空格分割;括号中有"",以引号内的分割
可以将字符串转换成列表
10) 去除(脱)
s11 = name.strip() ###脱,默认去除头尾两边的空格和换行符
#可以在(括号)中填上我们要去除的内容,这个内容只能指定处于头尾两边的
应用场景:
user = input("请输入用户名:").strip() pwd = input("请输入密码:").strip() if user == ‘alex‘ and pwd == ‘alex3714‘: print(‘可以取钱了‘) else: print(‘不能取钱‘)
11)插入
s12 = "".join() ##""中的指定字符拼接
#拼接列表 lst = [‘1‘,‘2‘,‘3‘] s = ‘_‘.join(lst) #将列表转化为字符串>>>>也可用for循环进入空字符串实现 print(s) #拼接字符串或数字 s = "123456" c = "-".join(s) print(c) #将字符串变成竖直方向 s = ‘ ‘.join(name) print(s)
12) 替换
s13 = name.replace("","") #用第二个值替换掉第一个值
name = "a l e x l h "
print(name.replace(" ","") >>>alexlh
13) 以什么开头
s14 = name.isstartswith()
14) 以什么结尾
s15 = name.isendswith()
15) 判断是不是数字和字母
s16 = name.isalnum()
16) 判断是不是纯字母
s17 = name.isalpha()
17) 判断是不是纯数字 ####
s18 = name.isdigit()
18) 求取字符串长度
s19 = len(name)
# format的格式化输出 ######3种代入方法
1.按照占位的顺序来填充
name = ‘张韶涵{}小{}{}‘ s = name.format(‘是我的‘,‘心‘,‘肝‘)
2.按照索引来对应填充
name = ‘张韶涵{0}小{2}{1}‘ s = name.format(‘是我的‘,‘心‘,‘肝‘)
3.按照关键字对应填充
name = ‘张韶涵{a}小{b}{c}‘ s1 = name.format(a=‘是我的‘,c=‘员‘,b=‘演‘) print(s1) 总结 split 分割 ********
strip 脱 默认脱头尾的空格 ********
replace 替换 ********
join 插入 拼接 ********
format % f ******
upper 全部大写 ******
lower 全部小写 ******
find 查找 不存在返回 -1 ******
index 查找 不存在报错 ******
isdigit 判断是不是纯数字 ******
isalpha 判断是不是纯字母 ******
count 统计 *****
title 每个单词首字母大写 *****
for 循环
for 关键字
i 变量(此处可以更改 更改规则参考变量命名规则)
in 关键字
可迭代对象 (想要循环谁就放谁,注意:数字除外 因为数字不可迭代)
1.将每个字符串列出
name = "alex"
1)while循环方法
count = 0 # 计数器 while count < len(name): print(name[count]) count = count + 1
2)for循环方法
for i in name: print(i)
2.在每个字符串后面加字符串
name = "alex" for i in name: l = name[i] + ‘嘿嘿嘿‘ l = i + ‘嘿嘿嘿‘ print(l)
3. for 循环内可以进行任意操作,可以写代码块:
例如:
name = ‘alex‘ for i in name: l = input(">>>") print(l)
注意: for循环是有限循环 限制范围取决与我们的迭代对象的长度
以上是关于一起学python 三 --字符串详解,for循环的主要内容,如果未能解决你的问题,请参考以下文章