Day 01
整型:
对比:
- 在python 2 版本中有整型,长整型long
- 在python 3 版本中全部都是整型
用于计算和比较
整型和布尔值的转换
二进制转换成十进制:
print (int("111010100",2))
# 2进制 - 10进制 0 * 2**0 + 1 * 2 ** 1 + 1 * 2**2 + 1* 2**3 + 1 * 2 ** 4 + 1 * 2 ** 5 0 + 2 + 4 + 8 + 16 + 32 = 62 print(int("111110",2))
十进制转换成二进制:
print(bin(30))
# 10进制 - 2进制 30 0 15 1 7 1 3 1 1 1 11110 print(bin(30))
整型中只要是非零的就是True
在布尔值中:1--True,0--False
在字符串中的内容非空就是True
int,str,bool a = bool(0) print(a) a = int(True) print(a) a = int(False) print(a) a = bool("a") print(a) a = bool("啊") print(a) a = bool(" ") print(a) a = bool("") print(a) a = str(True) print(type(a),a) a = str(False) print(type(a),a)
字符串详解:
索引(下标):
从左往右,开头为0
从右向左,结尾为-1
索引的条件不能超出索引本身最大值
a = "alex_wu_sir,_tai_bai_日魔" print(a[5]) print(a[6]) print(a[11]) print(a[-2]) print(a[-1])
切片:
[起始位置:终止位置]----原则:顾头不顾尾
终止位置可以超出索引本身
[::-1]----从头到尾字符串反转
a = "alex_wu_sir,_tai_bai_日魔" print(a[21:100]) print(a[21:]) [21(起始位置):(默认到最后)] print(a[:]) [(默认从最开始):(默认到最后)] print(a[0:-2])
步长:
步长决定了查找时迈的步子
步长决定了查找的方向
[起始位置:终止位置:步长]
[::-1]----从头到尾字符串反转
name = "alex,wusir,太白金星,女神,吴超" 1.太金 print(name[11:15:2]) 2.神女 print(name[-4:-6:-1]) 3.星白 print(name[-7:-13:-2]) 4."alex,wusir,太白金星,女神,吴超" 整体反转 print(name[::-1]) ***** 面试题的答案print(name[10:10000:200000])
字符串的方法
upper()--全部大写
lower()--全部小写
startswith()--以……开头
endswith()--以--结尾
replace()--把……替换成……
count()--统计字符出现的次数
strip()--脱(删除前后出现的空白)
split()--分割(默认空格,换行符\n,制表符\t)
format()--字符串格式化,填充
1. name = "{}今年:{}".format("宝元",18) # 按照位置顺序进行填充 print(name) 输出:宝元今年:18 2. name = "{1}今年:{0}".format("宝元",18) # 按照索引进行填充print(name) 输出:18今年:宝元 3. name = "{name}今年:{age}".format(name="宝元",age=18) # 按照名字进行填充print(name) 输出:宝元今年:18
isdigit()--判断字符串中的内容是否全是数字
isdecimal()--判断是不是十进制数
isalnum()--判断是不是数字,字母,中文
isalpha()--判断是不是字母,中文
for 循环
- for:关键字
- i : 变量名(可以随意更改)
- in :关键字
- msg:可迭代对象(python数据类型中,除了int,bool其余都可以迭代)