python是一门动态的、强类型语言
类型检车是验证类型约束的过程,编译器或解释器通常在编译阶段或运行阶段做类型检查
python类型检查发生在程序运行阶段
强类型语言:不管在编译阶段还是运行阶段,一旦某种类型绑定到变量后,此变量会持有此类型,并且不能同其他类型在计算表达式时,混合使用。
Python中缩进的层级结构代表代码的逻辑层次
乘法表
for i in range(1,10):
for j in range(1,i+1):
print("%d*%d=%d"%(j,i,j*i),end="\t")
print()
样本抽样
from random import randint,sample
lst = [randint(0,50) for _ in range(100)]
print(lst[:5]) # [26, 31, 22, 7, 15]
lst_sample = sample(lst,10)
print(lst_sample)
# strip 用于去除字符串前后的空格
S = " I love python\t\n "
print(S.strip())
# I love python
# replace 用于字符串的替换
S1 = "i love python"
print(S1.replace(" ","_"))
# i_love_python
#join用于合并字符串
print("_".join(["book","store","count"]))
# book_store_count
# titl用于单词的首字符大写
S2 = "i love python"
print(S2.title())
# I Love Python
#find 用于返回匹配字符串的起始位置索引
S3 = "i love python"
print(S3.find("python"))
# 7
判断str1是否str2旋转过来的
def is_rotation(s1,s2):
"""
判断str1是否str2旋转过来的
:param s1:
:param s2:
:return:
"""
if s1 is None or s2 is None:
return False
if len(s1) != len(s2):
return False
def is_substring(s1,s2):
return s1 in s2
return is_substring(s1,s1+s2)
r = is_rotation("stringbook","bookstring")
print(r)
# 匹配密码
# 密码要求是6到20位
# 密码只包含英文文字和数字
import re
pat = re.compile(r"[\da-zA-Z]{6,20}")
print(pat.fullmatch("qaz11112"))
#<_sre.SRE_Match object; span=(0, 8), match='qaz11112'>