第1月2周1天

逻辑运算
两边都是比较运算 () not and or
两边都是数字 x or y if x is True, return x
混合运算 1 or 3 and 4 < 6 这有什么需求?

count = 0
sum = 0 
while count < 100:
  sum = sum + count * (-1) ** (count + 1)
  ount += 1
  print(sum)

[[ctrl]] + [[d]] 复制当前行

1.基础类型总览

int,str,bool

list :[] 可存储任何类型,大量的数据,各种数据类型,操作方便。

tuple:() 只读列表

dict:字典,{"":""} 字典

set:集合,{} 关系测试

i.bit_length()  #十进制转成二进制的有效位数,0000 0001前边零不算
bin(i) #十进制转2进制
oct(i)#十进制转8进制
hex(i) #十进制转十六进制
int(字符串,进制) 

数据类型之间的转化

int --> str str(int) int(str) int自动去除字符串数字周围的空格

空字符串""对应布尔值是false
bool ---> str(bool) bool(str)

int --->bool bool(int) int(bool)

索引,切片,步长

#对字符串,的下边操作:形成的都是一个新的字符串,与原来的字符串没有关系
"按索引取值"
s1 = "python1期骑士计划"
s2 = s1[0]
s3 = s1[2]
"""取出最后一个字符"""
s4 = s1[-1]
"按切片取值"
s5 = s1[0:5] #按切片取值顾首不顾尾
s51 = s[:6] # 从0开始起始坐标可省略
s6 = s[6:]# 取到最后
s62 = s[6:-1s7 = ] #取到倒数第二个,因为-1代表最后一个,切片顾首不顾尾

"按照切片+步长"
s7 = s1[::2]
s8 = s1[1::2]
s9 = s1[::-1] #倒着取值,需要反向步长(负号)

"超过索引返回空"
In [79]: n = 'alexsb'
In [80]: n[100:]
Out[80]: ''

字符串的常用方法

name = "bob"
#首字母大写,其余边字符变成小写
name.capitalize()
name.center(20,"*")

#大写,小写
name.upper()
name.lower()

"在验证码时候会经常用到,将生成的验证码和,输入的验证码都大写"

#判断以什么为开头,为结尾
name.startswith("0",3,5) 从下标3开始是不是以0为开头
name.endswith("l")

函数有start end为参数对象就是可以切片的

"大小写翻转"
name.swapcase()

"标题,单词首字母大写"
name.title()

"通过元素找到索引"
name.find("z") 取第一个元素的索引,找到第一个就返回,找不到返回 -1,可切片,返回的是整体的索引
name.index("z") 找不到报错 ValueError

"去除首尾字符,默认空白符"
"\t"用鼠标选择是一个整体的大白格

name.strip("sd") 多个字符,包含的都去除,没有顺序

"应用输入"
rstrip()
lstrip()

"切割" 从字符串转化成列表
s4 = " alex wusir taibai"
split() 默认空格 第一个空格不作为分割出的一个元素 三个,
split(" ") 会分割出4个

"限制分割次数"
s5.split("l",1)

"从右至左分割"
s5.rsplit("f")
"从列表转化成字符串"
"".join(l)
"自定制连接符,将可迭代对象中的元素连接起来"
"**".join(str) # 将str内的字符以*号连接

"替换字符串"
s3 = str2.replace("alex","SB")
"限制替换次数"
str2.replace("alex","SB",2)

"格式化输出:format"
第一种 位置输出
"{}{}{}".format()
第二种 重复使用
"{0}{1}{2}".format()
第三种 字典形式
"{name}{age}{sex}".format

"is系列"
name.isalnum()数字或字母组成
name.isdigit() 全部是由整数组成
name.isalpha() 全部由字母组成

"公共方法"
name.count("a") 统计字符在字符串中出现次数,可切片


isidentifier 只要是符合变量命名就成
islower 只要有英文字母并且小写就成
istitle  有英文字母并且只有开头是大写就成

如果对一个数据类型进行循环,或者是一个有限次数的时候,往往要用到for


for i in s1:
  print(i)
  
  # for  变量 in iterable(可迭代对象)
  

while 1 的效率要比 while True 要高一点
exit('1') 退出并且打印结果的值

查看 unicode 是多少位

原文地址:https://www.cnblogs.com/yonghuierming/p/9507649.html