笔记06:循环和字符串

发布时间 2023-12-01 22:37:25作者: Melnis8

笔记06:循环

while循环

while condition is True:
	statement(s)
	if condition:
		break
	else: continue
else:

break 语句

跳出循环体

continue语句

跳出循环体并回到循环体的判断位置

else语句

当循环正常结束时,进行else语句

for循环

for variable in 可迭代对象:
	statement(s)

可迭代对象

可依次取出元素的对象

  • 序列(字符串,列表,range()

range()

  • range(n):从0开始的n个数字
  • range(m, n):前闭后开的区间(开始的数字,结束的数字)
  • range(m, n, l): l为步长,即每两个数之间相差的数
  • 步长可以为负数,如range(10, 5, -2)

笔记07:字符串

编写方式

  • 单引号

  • 双引号

    如果字符串内需要使用单/双引号,可用另一种引号包裹字符串

    也可使用转义字符

  • 三引号

原始字符串

在字符串前加"r",使字符串内的转义字符不再有效

跨行字符串

  • 在每一行的末尾加上一个"\"
  • 用’‘’ ‘’‘或”“” “”“包裹字符串

方法

大小写切换

  • (x.)capitalize(): 基于原字符串生成一个新字符串,其首字母为大写,其余为小写
  • (x.)casefold(): 全小写(不止英文
  • (x.)title(): 将每个单词的首字母变成大写,其余变小写
  • (x.)swapcase(): 大小写反转
  • (x.)upper(): 全大写
  • (x.)lower(): 全小写(仅限英文

左中右对齐

  • center(width, fillchar=' '):若宽度不足则以空格(默认,可更改)补充,使字符串居中
  • ljust(width, fillchar=' '):若宽度不足则以空格(默认,可更改)补充,使字符串居左
  • rjust(width, fillchar=' '):若宽度不足则以空格(默认,可更改)补充,使字符串居右
  • zfill(width):以0填充左侧

查找

  • count(sub[, start[, end]]): 查找子字符串在字符串内出现的次数,可选参数限制查找范围
  • find(sub[, start[, end]]): 定位子字符串在字符串中的下标索引值,从左往右,如果找不到,返回-1
  • rfind(sub[, start[, end]]): 定位子字符串在字符串中的下标索引值,从右往左,如果找不到,返回-1
  • index:与find相似,但找不到会报错
  • rindex:与rfind相似,但找不到会报错

替换

  • expandtabs([tabsize=8]):用空格代替制表符并返回新的字符串,参数指定一个tab等于多少空格

  • replace(old, new, count=-1):old替换为new,count指定次数

  • translate(table):根据转换规则的表格替换字符串内字符,返回新字符串

    x = "I love A"
    x.translante(str.maketrans("ABCDEFG", "1234567", love(指定的忽略内容)))
    
    >>>"I 1"
    

判断

  • startswith(prefix[, start[, end]])
  • endswith(suffix[, start[, end]])
  • isupper()
  • islower()
  • istitle()
  • isalpha()
  • isascii()
  • isspace()
  • isprintable()
  • isdecimal()
  • isdigit()
  • isnumeric()
  • isalnum()
  • isdentifier()

截取

  • strip(chars=None)
  • lstrip(chars=None)
  • rstrip(chars=None)
  • removeprefix(prefix)
  • removesuffix(suffix)

索引和切片

与列表相同

格式化字符串

"1 + 2 = {}, 2*2 = {}".format(1+2, 2*2)

>>>'1 + 2 = 3, 2*2 = 4'


"1 + 2 = {1}, 2*2 = {0}".format(2*2, 1+2)

>>>'1 + 2 = 3, 2*2 = 4'

位置参数

"{0}{0}{1}{1}".format("y", "n")

>>>'yynn'

关键字参数

"life is {a}, you need {b}".format.(a = "short", b = "Python")

>>>'life is short, you need Python'