字符串:不可变、有序序列;可以索引切片;引号界定;
单一字符的有序组合。例如,str=“python”
列表:可变、有序序列;可以索引切片;[ ]界定;
长度和内容都是可变的,可自由对列表中数据项进行增加、删除或替换。
没有长度限制,元素类型可以不同,使用非常灵活。例如ls = [425, “BIT”, [10, “CS”], 425]
元组:不可变、有序序列;可以索引切片;( )界定;
包含0个或多个数据项的不可变序列类型。元组生成后是固定的,其中任何数据项不能替换或删除。
例如,color = (“red”, 0x001100, “blue”, creature)
集合:可变、无序;不可以索引切片;{ }界定;
包含0个或多个数据项的无序组合。例如S = {425, “BIT”, (10, “CS”), 424}
字典:可变、无序映射;不可以索引切片;{ }界定;
包含0个或多个键值对的集合。
字典是一个键值对的集合,该集合以键为索引,一个键信息只对应一个值信息;
key不重复,不可变; value可变
例如,shoudu={“中国”:“北京”, “美国”:“华盛顿”, “法国”:“巴黎”}
相同点:都是有序集合
异同点:1.list是可变数据类型,tuple是不可变数据类型
2.定义方式:list[] tuple()
3.list有append(),insert(),extend();pop(),remove(),clear()等增删方法;tuple没有
- 作用域——变量起作用的范围
- 全局作用域——变量在整个程序中都有效。
- 局部作用域——变量只在代码块中有效,比如函数内部。
def 函数名称([参数]):
[函数注释]
[函数体]#创建语法
若有返回值,则用return返回;若无返回值,无需return,但是默认依然返回值:None
- break:退出整个循环,执行循环体外的语句;
是结束整个循环过程,不再判断执行循环的条件是否成立
- continue:退出本次循环,进入下一轮循环;
只结束本次循环,而不终止整个循环的执行
以字母、数字、下划线组成,不能以数字开头 ,大小写敏感,不能使用系统关键字
8. __new__和__init__的区别?
①__new__是一个静态方法,而__init__是一个实例方法.
②创建一个新实例时调用__new__,初始化一个实例时用__init__.
③__new__方法会返回一个创建的实例,而__init__什么都不返回.
④只有在__new__返回一个cls的实例时,后面的__init__才能被调用.
异常是指因为程序执行过程中出错而在正常控制流以外采取的行为。
严格来说,语法错误和逻辑错误不属于异常,但有些语法错误往往会导致异常。
例如由于大小写拼写错误而访问不存在的对象,或者试图访问不存在的文件,等等。
错误是语法或是逻辑上的。当检测到一个错误时,解释器会指出当前流已经无法继续执行下去,这个时候就会出现异常。
names = ["zyh","xp"]
ages = [20, 23]
result = dict(zip(names,ages))
print(result)
def tongji(str):
alpha = 0 # 统计字母
space = 0 # 统计空格
digit = 0 # 统计数字
qita = 0 # 统计其他字符
for s in str:
if s.isalpha():
alpha += 1
elif s.isspace():
space += 1
elif s.isdigit():
digit += 1
else:
qita += 1
print("字母:",alpha,";空格:",space,";数字:",digit,";其他:",qita)
ss = input("请输入一行字符:")
tongji(ss)
"""
return letter, space,digit,other
ss = input("请输入字符串:")
print(call2(ss))"""
count = 0
for i in range(1,5):
for j in range(1,5):
for k in range(1,5):
if i != j and i != k and j != k:
count += 1
print(i,j,k)
print("共有%d种排列"%count)
x2=1 #第十天的剩下的桃子的个数
for day in range(9,0,-1):
x1=(x2+1)*2 #第九天桃子的个数
x2=x1
print("第一天个数%d"%x1)
def sum_numbers(num):
result = 0
for i in range(1,num+1): #不包括num+1
result += i
return result #缩进一定要注意
num = input("请输入一个正整数")
print(sum_numbers(int(num)))
def sum_numbers(num):
if num == 1: #等于号不能写错
return num #使得num不会到0 和负数
else:
return num +sum_numbers(num-1)
num = input("请输入一个正整数:")
print(sum_numbers(int(num)))
def jiecheng(num):
result=1
for i in range(1,num+1):
result *= i
return result
a = input("请输入一个正整数:")
print(jiecheng(int(a)))
def jiecheng(num):
if num == 1:
return 1
else:
return num * jiecheng(num-1)
a = input("请输入一个正整数:")
print(jiecheng(int(a)))
#判断输入的队尾人数是否符合要求
#如果复合要求 duiwie=False 会跳出循环;否则会一直循环 直到输入正确的符合要求的数字
duiwei = True
while duiwei:
a,b,c = input("请输入三个数,逗号分隔:").split(",") #这句不要忘记
if int(a)<3 and int(b)<5 and int(c)<7:
duiwei = False
#跳出循环
num = 10#总人数不小于10 不超过100
flag = True
while num<=100 and flag:
if (num%3)==int(a) and (num%5)==int(b) and (num%7)==int(c):
print("最少人数为:%d"%num)#满足要求之后输出人数
flag = False
break #跳出循环
num += 1
if flag:
print("无解")
机器语言是一种二进制语言,它直接使用二进制代码表达指令,是计算机硬件可以直接识别和执行的程序设计语言。
例如:执行数字2和3的加法,16位计算机上的机器指令为:11010010 00111011,不同计算机结构的机器指令不同。
汇编语言使用助记符与机器语言中的指令进行一一对应,在计算机发展早期帮助程序员提高编程效率。
例如:执行数字2和3的加法,汇编语言指令为:add 2, 3, result,运算结果写入result。
高级语言是接近自然语言的一种计算机程序设计语言,更容易地描述计算问题并利用计算机解决计算问题。
例如:执行数字2和3加法的高级语言代码为:result = 2 + 3
文本文件一般由单一特定编码的字符组成,如UTF-8编码。
例如txt格式的文本文件。
二进制文件直接由比特0和比特1组成,没有统一字符编码,文件内部数据的组织格式与文件用途有关。
例如,png图片,avi格式视频。二进制文件和文本文件最主要的区别在于是否有统一的字符编码
利用一个中文词库,将待分词的内容与分词词库进行比对,通过图结构和动态规划方法找到最大概率的词组。
jieba库支持3种分词模式:
静态语言和脚本语言是高级语言按照计算机执行方式的不同进行的分类。
静态语言是使用编译方式执行的语言,脚本语言是使用解释方式执行的语言。
静态语言编译和执行过程如下:
for是确定次数的遍历循环;
while是无限循环又称条件循环,while循环一直保持循环操作直到循环条件不满足才结束。
for 和 while 的例子分别如下:
for s in "PYTHON":
print(s, end="") #PYTHON
idx = 0
while idx < len("PYTHON"):
idx += 1
print("循环次数:{}".format(idx)) # 输出:循环次数:6
python对文本文件和二进制文件采用的统一操作步骤是:打开-操作-关闭。
以文本文件方式打开如下:textfile = open(‘file.txt’,‘rt’)
以二进制文件方式打开如下:binfile = open(‘file.txt’,‘rb’)
网络爬虫应用一般分为两个步骤:
这两个步骤分别使用不同的函数库:requests 和 beautifulsoup4。
这两个库的pip安装指令如下:
以二进制文件方式打开如下:binfile = open(‘file.txt’,‘rb’)
网络爬虫应用一般分为两个步骤:
这两个步骤分别使用不同的函数库:requests 和 beautifulsoup4。
这两个库的pip安装指令如下: