python第三节

1.整型及布尔值

1.1 进制转换

十进制 ----二进制

二进制 ----十进制

8421方法与普通计算

python中十进制转二进制示例:bin(51)>>>0b110011

python中二进制转十进制示例:int(0b110011)>>>51

1.2布尔值

数字中只有0是False,其余都为True

字符串中只要有内容都是True,没有内容是False

示例

print(bool(""))
print(int(True))
print(int(False))

2.字符串详解

字符串是有序的,是不可变的

2.1 索引(准确且快速的找值)
s = "zhan"
print(s[0])
print(s[-1])
2.2 切片(切头不切尾)

获取某个区间

s = "zhan_learn_in_oldboy"
print(s[0:10]) # [起始索引:终止索引]
print(s[-6:])    # [起始索引:默认获取字符串末尾的内容]
print(s[11:20])
print(s[:])      # [默认获取字符串开始的内容:默认获取字符串末尾的内容]
对比:
s = "alex_baoyuan|oldboy"
索引
print(s[20])  #报错: string index out of range
切片
print(s[1:100]) # 切片超出索引值不会报错

步长

步长能够决定查找方向

步长为正从左向右查找

步长为负从右往左查找

s = "zhan_learn_in _oldboy"
print(s[0:3])  #步长默认为1
print(s[0:3:2])  #步长为2

回文:上海自来水来自海上

示例:

user_input = input("请输入你认为的回文:")
if user_input == user_input[::-1]:
    print("你输入的是回文")
else:
    print("你输入的不是回文")

3.字符串的方法

s="zhan_learn   "
print(s.strip())
print(s.split("_"))
print(s.replace("_","-"))
print(s.upper())
print(s.lower())
print(s.startswith("zh"))
print(s.endswith("sg"))
print(s.count("n"))


# is系列
s = "123你好啊aaaa"
print(s.isalpha())    # 判断是不是由字母,中文组成 -- 返回的是布尔值 ***
print(s.isdigit())    # 判断是否是数字 -- bug
print(s.isdecimal())  # 判断是否是十进制的数     ****
print(s.isalnum())      # 判断是不是字母,数字,汉字

4.for循环

基本结构

for i in 可迭代对象:
    循环体

示例:

s = "zhan"
for i in s:
    print(i)

面试题

问:打印输出的结果
s = '123'
for i in s:
    pass
print(i)
问:打印输出的结果
s = "12"
for i in s:
    print(s)
02-11 13:31