字符串

#利用下标的正数、负数分别输出字符串的倒序**

a=input("请输入字符串")
i=len(a)-1
while i>=0:print(a[i],end="")i-=1

#第二种

a=input("请输入字符串")
i=-1
while i>=-len(a):print(a[i],end="")i-=1

#字符串切片

a="qwerty"
b=a[1:5:2]

#中括号里面的数依次分别代表了开始的位置,结束的位置,步长
print(b)# wr
#几种特殊情况

    a="qwrtyu"b=a[-1:-3:-1]print(b)#uy

#这种情况是从后往前排序的,步长要为负,不然不输出结果

  a="1234567890wert"b=a[8:-1:1]print(b)#90wer

#类似于上面的情况,虽然结束值是负数,但由于下标的特性,-1也代表了正数的最后一个值,
所以步长必须为正,不然不会输出**

#倒序输出

a="qwert"
b=a[::-1]
print(b)# trewq

#字符串遍历、拼接、重复
#遍历

a="asdfgh"
for i in a:print(i,end=" ")

#结果:a s d f g h
#拼接、重复

a="123"
b="456"
c=a+b
print(c)#123456
d=a*3
print(d)#123123123a,b="12"
print(a,b)#1 2
a,b,c,d="1234"
print(a,b,c,d)#1 2 3 4

#这里只能一一对应

#字符串函数
#find 显示查找的第一次出现的时候首个字符的下标,若不存在返回-1

a="qwertyuioer"
i=a.find("er")
print(i)    #2
j=a.find("45")
print(j)    #-1
#rfind 从右向左查找
k=a.rfind("er")
print(k)    #9

#index 大致与find相似,但如果查找的字符串不存在会报错

a="1234ert"
b=a.index("34")
print(b)
c=a.index("45")
print(c)#报错,ValueError: substring not found

#count 统计所查找的字符串出现的个数

a="123456qwertqwerqwer"
b=a.count("qwer")
print(b)

#partition 指定一个字符,从指定的字符处分割成多个字符,但只对从左向右第一个指定的字符有效

a="123-1234-1234"
b=a.partition("-")
print(b)    #('123', '-', '1234-1234')

#split splitlines
#split

a="12345-12345-12345"
b=a.split("-")
print(b)    #['12345', '12345', '12345']

#splitlines

a="1234\n-234\n-23423"
b=a.splitlines()
print(b)#对比
a="1234\n-234\n-23423"
c=a.split("\n")
print(c)

#maxsplit ,表示最大的分割次数

a="1-1-2-3-4"
b=a.split("-",maxsplit=2)
c=a.split("-",maxsplit=4)
print(b)    #['1', '1', '2-3-4']
print(c)    #['1', '1', '2', '3', '4']

#replace 将一个字符换成另一个字符,原字符串不变,生成一个新的字符串

a="qwert"
b=a.replace("q","2")
print(b)    #2wert

#maketrans \translate

a="521"
x=str.maketrans("12345","uoeri")
print(x)    #{49: 117, 50: 111, 51: 101, 52: 114, 53: 105}
y=a.translate(x)
print(y)    #iou

#center 居中函数

a="qwer"
b=a.center(10)
print(b,end="$")    #   qwer   $

#ljust \rjust\zfill 数字10代表的是填充完的总长度,
特殊符号代表的用什么填充的,zfill用0填充

a="qwer"
b=a.ljust(10,"$") # 左填充
print(b)
c=a.rjust(10,"¥") # 右填充
print(c)
d=a.zfill(10) # 0填充
print(d)

#strip、lstrip、rstrip

a="   qwe  "
b=a.strip()#删除所有空格
print(b,end="*")#qwe*
print()
a="   qwe  "
c=a.lstrip()#删除左边的空格
print(c,end="*")#qwe  *
print()
a="   qwe  "
d=a.rstrip()#删除右边的空格
print(d,end="*")#   qwe*

#括号里有什么就删除什么

a="$$$123$$$"
b=a.lstrip("$")
c=a.rstrip("$")
print(b)
print(c)

#位置参数 format

a="姓名{} 年龄{}"
b=a.format("张三",19)
print(b)a="{1} {0}".format("python","hello")
print(a)

#关键字参数

a="我叫{name},今年{age}岁,性别{sex}".format(age=19,name="张三",sex="男")
print(a)

#填充 特殊符号$ * &表示的用什么填充,^表示居中,<表示左对齐,>表示右对齐

a="我叫{:$^8}".format("张三")
print(a)
b="我叫{:*<8}".format("张三")
print(b)
c="我叫{:&>8}".format("张三")
print(c)

#精度和进制

a="长度{:.2f},宽度{:.3f},高度{:.0f}".format(1234.234,12.2345,34.43)
print(a)a="二进制{:b},八进制{:o},十六进制{:x}".format(10,10,10)
print(a,)

#格式化

a="我叫%s,今年%d岁,考了%f分,成才率89.6%%"%("张三",16,98.4)
print(a)

#upper\lower\swapcase

a="werQWE"
b=a.upper()#全部变为大写
print(b)
c=a.lower()#全部变为小写
print(c)
d=a.swapcase()#大小写相互转化
print(d)

#title:将每个单词的首字母大写 capitalize:将第一个单词的首字母大写

a="what is your name"
b=a.title()
print(b)#What Is Your Name
c=a.capitalize()
print(c)#What is your name#\t制表符(默认间隔四个字符)
a="what\tis\tyour\tname"
print(a)#what   is  your    name

#isalpha 判断字符串是否全是字母 iadigit判断字符串是否全是数字
isalnum判断字符串是否全是字母和数字组成

a="qwer"
b="qwe123"
c="1234"
print(a.isalpha())#True
print(b.isalpha())#False
print(c.isdigit())#True
print(b.isdigit())#False
print(c.isalnum())#True
print(b.isalnum())#True

#isupper islower istitle

a="qweQWE"
b="qwer"
c="QWE"
d="Wfd"
a1=a.isupper()
a2=a.islower()
a3=a.istitle()
print(a1,a2,a3)#False False False
b1=b.islower()
c1=c.isupper()
d1=d.istitle()
print(b1,c1,d1)#True True True

#startswith endswith分别用来判断字符串的开头结尾是否是指定的字符串

a="1234qwer"
b=a.startswith("1234")#True
print(b)
c=a.endswith("qwer")#True
print(c)#help() dir()
a="qwert12344wert"
print(dir(a))
print(help(a.replace))

#encode 编码 \decode解码

    a="qwe12"b=a.encode("utf-8")print(b)    #b'qwe12'c=b.decode("utf-8")print(c)    #qwe12#\转义字符
a="123\ndf\tasdf\'adf\"as\\"
print(a)
#结果:123df    asdf'adf"as\

#R或r元字符串 可以使转义字符失效

a=r"sdf\\sdf\nf\t"
print(a)#sdf\\sdf\nf\t

作业

#1.判断一个数是否是回文数。例如:输入:121,输出也是121,像这样的数就是回文数

num =input("请输入一个数")
if num==num[::-1]:print(num,"是回文数")
else:print(num,"不是回文数")

# 2.查找字符串中每个字符最后出现的位置。

a="黑化肥发挥会发灰,灰化肥发黑会发挥"
for index,char in enumerate(a):if index ==a.rindex(char):print((index,char))

# 3.‘2018-11-12’去掉‘-’输出

s = '2018-11-12'
s1=s.replace("-","")
print(s1)

# 4.统计数字,字母,下划线个数

a=input("请输入字符串:")
sz=0
zm=0
xhx=0
for i in  a:if i>="a" and i<="z" or i>="A" and i<="Z":zm+=1elif i>="0" and i<="9":sz+=1elif i=="_":xhx+=1
print("数字",sz,"字母",zm,"下划线",xhx)

# 3.编写一个函数,接收传入的字符串,统计大写字母的个数、小写字母的个数、数字的个数、
# 其它字符的个数,并以元组的方式返回这些数,然后调用该函数。

def hanshu(x):list=[]dx=0xx=0sz=0other=0for i in range(x.__len__()):if x[i]>="A" and x[i]<="Z":dx+=1elif x[i]>="a" and x[i]<="z":xx+=1elif a[i]>="0" and a[i]<="9":sz+=1else:other+=1list.append(dx)list.append(xx)list.append(sz)list.append(other)print("列表",list)return tuple(list)a=input("输入")
y=hanshu(a)
print(y)

4.29 笔记+day7作业相关推荐

  1. GAMES101-现代计算机图形学学习笔记(作业07)

    GAMES101-现代计算机图形学学习笔记(作业07) Assignment 07 GAMES101-现代计算机图形学学习笔记(作业07) 作业 作业描述 思路 结果 原课程视频链接以及官网 b站视频 ...

  2. GAMES101-现代计算机图形学学习笔记(作业02)

    GAMES101-现代计算机图形学学习笔记(作业02) Assignment 02 GAMES101-现代计算机图形学学习笔记(作业02) 作业 作业描述 需要补充的函数 思路 结果 原课程视频链接以 ...

  3. GAMES101-现代计算机图形学学习笔记(作业01)

    GAMES101-现代计算机图形学学习笔记(作业01) Assignment 01 GAMES101-现代计算机图形学学习笔记(作业01) 作业 作业描述 需要补充的函数 思路 结果 原课程视频链接以 ...

  4. (尚硅谷java零基础教程)学习笔记day7/8-数组

    1.数组的概述 1.1 定义 数组(Array),是多个相同类型数据按一定顺序排列的集合,并使用一个名字命名,并通过编号的方式对这些数据进行统一管理. 1.2 数组的相关概念 数组名 元素 数组的索引 ...

  5. GAMES101-现代计算机图形学学习笔记(作业03)

    GAMES101-现代计算机图形学学习笔记(作业03) Assignment 03 GAMES101-现代计算机图形学学习笔记(作业03) 作业 作业描述 思路 原课程视频链接以及官网 b站视频链接: ...

  6. 【Computer Organization笔记29】大作业展示

    本次笔记内容: P57 计算机组成原理(57) P58 计算机组成原理(58) 我的计组笔记汇总:计算机组原理成笔记 视频地址:计算机组成原理 清华大学刘卫东 全58讲 国家精品课程 1080P 更完 ...

  7. 《Python编程:从入门到实践》基础知识部分笔记和作业

    2.3.1 修改字符串大小写 变量名.title()   #单词首字母大写 变量名.upper()   #全部大写 变量名.lower()   #全部小写 2.3.2 在字符串中使用变量(format ...

  8. 19.5.5笔记and作业

    笔记 将二维列表打印为一维列表 a=[[1,2,3],[4,5,6],[7,8,9]] b=[j for x in a for j in x ] print(b) 打印3*3的列表,用推导式 b=[[ ...

  9. 【MySQL】听柠檬班公开课后,学习笔记及作业(一)

    此笔记为听柠檬班公开课后笔记,特为其打call,如有侵权,请随时联系我删帖哦 一.课堂笔记 交叉连接 结果为笛卡尔积(两表条数相乘),两种写法,分别如下: select * from table1, ...

  10. Python课程第六周笔记及作业练习

    Python第六周 笔记 作业 练习 笔记 组合数据类型 三种基本数据类型: (1) 集合类型 (2) 序列类型:元组类型和列表类型 (3) 字典类型 集合类型及操作 (1) 集合类型定义 集合是多个 ...

最新文章

  1. “奥利”来啦,腾讯Robotics X实验室跑出的“轮滑小子”
  2. 【Web安全】DVWA之Command injection(命令执行漏洞)探索
  3. HTTP-GET, HTTP-POST and SOAP的比较
  4. 模拟操作系统动态内存管理(c实现)
  5. 这些deep learning(rnn、cnn)调参的经验值得分享
  6. 基于visual Studio2013解决C语言竞赛题之0505选数
  7. 小米4刷CM13系统
  8. java 调用dll内存泄露_对 精致码农大佬 说的 Task.Run 会存在 内存泄漏 的思考
  9. 操作系统实验报告-系统调用
  10. 程序员跳槽面试刷题必备,微软工程师放大招!| 程序员硬核评测
  11. Caffe学习:使用pycaffe读取mean.binaryproto文件参数
  12. 便携式CAN分析仪与毫米波雷达搭配使用
  13. 富文本编辑器Editor.md入门
  14. 配色教程,学习RGB配色,最简单的配色基础。
  15. SSO单点登录系统的搭建——Keycloak
  16. 如何修改VsCode的背景图片
  17. 能提醒生日的软件 精准的提醒生日软件多功能便签超好用
  18. L1-005 考试座位号 (15 分)
  19. 利用Catmull-Rom算法画人脸轮廓
  20. WebGL 和 Canvas 的关系

热门文章

  1. chromium 各种版本下载
  2. 总结一下Android中主题(Theme)的正确玩法
  3. mysql 清理relay日志_mysql 清除relay-log文件方法
  4. 国产AIoT SoC芯片
  5. 阿尔伯塔大学 计算机科学,阿尔伯塔大学计算机科学专业入学要求及申请费用盘点...
  6. 电脑出现蓝屏后自动重启是什么原因
  7. 天津大学计算机系分数线,2019天津大学录取分数线及历年专业分数线统计表【文科 理科】...
  8. 华硕服务器怎么装系统教程,买了华硕电脑不会装系统?教你简单快速的系统重装教程...
  9. ABC Amber CHM Converter:CHM转换PDF
  10. 几行代码实现shiro超级管理员的功能