day03——整型、字符串、for循环

day03

整型

用于比较和运算

32位:-2 ** 31——2 ** 31-1

64位:-2 ** 63——2 ** 63-1

长整型(long)

python2中有长整型、获取的是整数

python3中只有整型、获取的是浮点数(小数)

进制转换

十六进制 八进制

二进制 ——0、1

bin():十进制转二进制 ,一直除二余1或0,从下往上

int():二进制转十进制,从右往左:1 2 4 8 16 32

# 15  1
# 7   1
# 3   1
# 1   1

# 24    0
# 12    0
# 6     0
# 3     1
# 1     1

# 186     0
# 93      1
# 46      0
# 23      1
# 11      1
# 5       1
# 2       0
# 1       1

print(bin(186))  #十进制转为二进制

# 111000  # 从右向左进行计算
# 0 * 2 ** 0 + 0 * 2 ** 1 + 0 * 2 ** 2 + 1 * 2**3 + 1*2 ** 4 +1 * 2** 5
# 0 + 0 + 0 + 8 + 16 + 32

# 10101
# 1 * 2 ** 0 + 0 * 2**1 + 1* 2**2 + 0 * 2**3 + 1* 2 **4
# 1  +  0 + 4 + 0 + 16

print(bin(21))
print(int("10101",2)) #将二进制转换成十进制
print(bin(21))        # 将十进制转换成二进制

int(True)==1

int(False)==0

布尔值(bool)

数字非零就是True,零就是false

字符串只要是不为空就是True,为空就是false

bool()转为布尔值

字符串

引号引起来的就是字符串

字符串是用来存储少量的数据

索引

name = "meat"  # meat 每一个字母叫做一个元素
       #0123  从左向右
       #-4-3-2-1 从右向左
       #索引(下标)  通过索引可以精确的定位到每个元素
print(name[-1])
print(name[100]) # 索引值超出范围会报错

切片

name = "今天是个好日子"
# a = name[0]
# b = name[1]
# print(a+b)
print(name[0:2]) # 顾头不顾尾  name[起始位置:终止位置]
print(name[2:]) # 某个位置不指定的时候默认取最后或最前
print(name[-2:-5:-1]) # [起始位置:终止位置:步长]步长默认为1,通过步长可以决定方向和迈的步子数

print(name[-6:6])   # 可以正负一起用

print(nam[100:105]) # 起始位置和终止位置都超出的时候不会报错

# s = 'Python最NB'
# # 获取s字符串中前3个内容
# print(s[0:3])
# # 获取s字符串中第3个内容
# print(s[2])
# # # 获取s字符串中后3个内容
# print(s[6:])
# # # 获取s字符串中第3个到第8个
# print(s[2:8])
# # # 获取s字符串中第2个到最后一个
# print(s[1:])
# # # 获取s字符串中第1,3,5个内容
# print(s[:5:2])
# # 获取s字符串中第2,4,6个内容
# print(s[1:6:2])
# # 获取s字符串中所有内容
# print(s[:])
# # 获取s字符串中第4个到最后一个,每2个取一个
# print(s[3::2])
# # 获取s字符串中倒数第5个到最开始,每3个取一个  
# print(s[-5::-3])

字符串的方法

字符串系列

upper():全部大写

lower():全部小写

s = "alex"
s1 = s.upper()
s2 = s1.lower()
print(s1,s2)

# 应用场景
# s = input("验证码(asdf1中):")
# if s.upper() == "asdf1中".upper():
#     print("验证码正确")
# else:
#     print("验证码错误")

startswith():判断是不是以 内容 开头

使用:startswith("内容",起始位置,终止位置)

endswith():判断是不是以 内容 结尾

使用:endswith("内容",起始位置,终止位置)

s = "alex"
s1 = s.startswith("a")
s2 = s.startswith("l",1,6)

s3 = s.endswith("x")
s4 = s.endswith("e", 1,3)

count():统计个数

s = "alexdsbxxasdx"
s1 = s.count("x")
print(s1)

strip()(脱): 去掉字符串头尾两端的空格和换行符\n、制表符\t

也可以脱去内容:strip("内容"),如果有多个内容是先去掉内容的各一个,然后再组合起来去掉

# n = input(">>>")
# if n.strip() == "alex":
#     print("1")
# else:
#     print("2")

# s = "alexdsba"
# s1 = s.strip("a") # 可以指定内容取脱
# print(s1)

# 如果有多个内容是先去掉内容的各一个,然后再组合起来去掉
s = "alexdsba"
s1 = s.strip("ba") 
s2 = s.strip("ab")
print(s1)  # 结果是lexds
print(s2)  # 结果是lexds   结果是一样的 

split():分割字符串的空格和换行符\n、制表符\t,也可以分割其他内容,也可以选择切几次

split("内容,次数")

lsplit():从左开始

rsplit:从右开始

s = "aelx asd ww"
s1 = s.split()
print(s1)  # ['aelx', 'asd', 'ww']


# s = "aelxlaaa"
# s1 = s.split("l",maxsplit=1)  # 可以通过指定方式进行切割,并且可以安排次数
# print(s1)   # ['ae', 'xlaaa']

replace():替换

replace(“旧的值”,"新的值",次数)

# s = "大黑哥吃肉夹馍,肉夹馍"
# s1 = s.replace("肉夹馍","大煎饼")
# s1 = s.replace("肉夹馍","大煎饼",1) # 指定替换的次数
# print(s1)
is 系列

isalnum():判断是不是字母、数字、中文

isalpha():判断是不是字母和中文

isdigit():判断字符串中是不是全是有阿拉伯数字

isdecimal():判断字符串是不是十进制数

# s = "12.3"
# print(s.isalnum()) # 判断是不是字母,数字,中文
# print(s.isalpha())  # 判断是不是字母,中文
# print(s.isdigit())  # 判断字符串是不是全都是阿拉伯数字
# print(s.isdecimal())  # 判断是否是十进制

for循环

for+空格+变量名+in+可迭代对象

缩进+代码

for 关键字

i 是变量名,变量可以自己修改

in 关键字

name 可迭代对象,数据类型中只有整型和布尔值不能够进行for循环

"""
你
好
啊
"""

# count = 0
# while count < len(name):
#     print(name[count])
#     count += 1

# name = "你好啊"
# for x in name:  # for循环
#     print(x)

# name = "你好啊"
# for i in name:  # for循环
#     print(i)

# i = "你"
# print(i)
# i = "好"
# print(i)
# i = "啊"
# print(i)


# print(3)
# print(54)
# print(67)
# print(i)

# name = "alex"
# for x in name:
#     print(x)
# print(x)

面试:

一、

for i in "alex"
	pass
print(i)
# 结果是 
# x
# 特殊题
name = "alex"
for x in name:
	print(x)
print(x)
# 结果是:
# a
# l
# e
# x
# x

其他知识:

1.pass 、... 是占位:占着位置,使程序不会产生错误

2.len()获取长度

name = "asdsafsafasd"
print(len(name))
posted @ 2019-07-09 15:57  SupSnake  阅读(199)  评论(0编辑  收藏  举报