day03

1. 整型和布尔值的转换

1.1 整型--数字(int)

  • 用于比较和运算的
  • 范围
32位 : -2**31~2**31-1
64位 : -2**63~2**63-1
  • python2 整型: int / long(长整型)获取的是整数
  • python3 整型: int /获取的是浮点数(小数)

1.2 二进制和十进制的转换(以"173"为例:)

1.2.1 十进制转为二进制

以173为例:(除以2)      商     余数
					173  	1
					86		0
					43		1
					21		1
					10		0
					5		1
					2		0
					1		1
从下往上数,即:(10101101)

1.2.2 编码 print(bin(173))

1.2.3 二进制转为十进制

以173为例:(2的幂次方)(10101101)   
1*2**0 + 0*2**1 + 1*2**2 + 1*2**3 + 0*2**4 + 1*2**5 + 0*2**6 + 1*2**7 = 1 + 0 + 4 + 8 + 0 + 32 + 0 + 128 =173
从右向左,幂值从0开始

1.2.4 编码 print(int("10101101",2))

1.3 布尔值 bool

1.3.1 True

print(bool(1))  #数字非零的都是True. 零就是False 
print(bool("")  #字符串不为空就是True,空格是True.什么都没有就是False.

2. 字符串

2.1 定义

  • 在python中用引号引起来的就是字符串
  • 字符串用来储存少量数据
 name = "meet"  # meet 每个字母叫做一个元素
	     0123   # 从左向右
	     -4-3-2-1# 从右向左
 #索引,可以准确定位到某个元素,类似学号
 print(name[100])   #  索引值超过范围是会报错
name = "今天是个好日子"
   #    0 1 2 3 4 5 6
a = name[0]
b = name[1]
print(a+b)
切片:
print(name[0:2])  #顾头不顾尾 name[起始位置:终止为止]
print(name[:])   #某个位置不指定的时候默认取最后或最前

步长:
print(name[-2:-5:-1]) #默认为1,控制方向和迈的步子

2.2 重要易错知识

2.2.1 索引值超过范围是会报错

print(name[100])   # string index out of range

2.2.2 切片时起始位置和终止位置都超出范围时不报错

print(name[100:105])  #没有结果,不报错

2.3 字符串的方法

s = "alExdajbxa"
s1 = s.upper()  #全部大写
应用场景:
s = input("请输入验证码(AbCd):")
if s.upper() == "AbCd".upper():
	print("正确")
else:
	print("错误")
	
s2 = s.lower()  #全部小写
s3 = s.startswith()  #以...开头    结果是布尔值 True / False
s.startswith("a",2,6)  # 开头,起始位置,终止位置
括号里可以添加切片
s4 = s.endswith()  #以...结尾
s.count()
s5 = s.count("x")  #计数,结果为数字

s.strip()   # 默认拖去字符串两端的空格.换行符及制表符
# s = input(">>>")
# if s.strip() == "alex":
#     print("1")
# else:
#     print("2")

s = "alExdajbxa"
s.strip("al")  # 结果 Exdajbx 分别将首尾的"a" 及"al"进行去除

s.split("l",1) #""里边是以什么切割. 1 不是下标,是切的次数

s.replace("","",1)  #前边""添加旧的值,后边""添加新的替换值. 1 表示换的次数,默认有几个换几个,不能是负数,不报错,但也不替换

3. is系列

3.1 isalnum ()

  • 判断是不是字母数字和汉字

3.2 isalpha()

  • 判断是不是字母和中文

3.3 isdigit ()

  • 判断字符串是不是全都是阿拉伯数字 /坑②结果是True

3.4 isdecimal()

  • 判断是不是十进制

4. for循环

4.1 for 变量 in 可迭代对象:

s = "alex"   #可迭代对象,不能是整型和布尔值
for i in s: 
	print(i)  #i 迭代结果
	
结果
a
l
e
x	
	
s = "alex"   #可迭代对象,不能是整型和布尔值
for i in s: 	
	print(s)   #用i的次数进行循环
结果
alex
alex
alex
alex

s = "alex"   #可迭代对象,不能是整型和布尔值
for i in s:
	pass
print(i)   #i 依次等于a l e x 最后i被赋的值就是x
结果
x
原文地址:https://www.cnblogs.com/lvweihe/p/11154087.html