python闯关之路⼀(语法基础)
1,什么是编程?为什么要编程?
  答:编程是个动词,编程就等于写代码,那么写代码是为了什么呢?也就是为什么要编程呢,肯定是为了让计算机帮我们搞事情,代码就是计算机能理解的语⾔。
2,编程语⾔进化史是什么?
  答:机器语⾔  ------>   汇编语⾔  ------>  ⾼级语⾔
  机器语⾔:由于计算机内部只能接受⼆进制代码,因此,⽤⼆进制代码0和1描述的指令称为机器指令,全部机器指令的集合构成计算机的机器语⾔,机器语⾔属于低级语⾔。
  汇编语⾔:其实质和机器语⾔是相同的,都是直接对硬件操作,只不过指令采取了英⽂缩写的标识符,更容易识别和记忆。
  ⾼级语⾔:是⼤多数编程⼈员的选择,和汇编语⾔相⽐,他不但将许多相关的机器指令合成为单条指令,并且去掉了与具体操作相关但与完成⼯作⽆关的细节,⾼级语⾔主要是相对于汇编语⾔⽽⾔,它并不是特指某⼀种具体的语⾔,⽽是包含了许多编程语⾔。如
C/C++,JAVA,PHP,PYTHON等都属于⾼级语⾔。
  机器语⾔:优点是最底层,速度快,缺点是复杂,开发效率低
  汇编语⾔:优点是⽐较底层,速度快,缺点是复杂,开发效率低
  ⾼级语⾔:编译型语⾔执⾏速度快,不依赖语⾔环境运⾏,跨平台差
      解释型跨平台⽐较好,⼀份代码,到处使⽤,缺点是执⾏效率慢,依赖解释器运⾏
相⽐于机器和汇编语⾔,⾼级语⾔对开发⼈员更友好,在开发效率上⼤⼤提⾼。
3,简述编译型与解释型语⾔的区别,且分别列出你知道的哪些语⾔属于编译型,那些属于解释型
  ⾼级语⾔所编制的程序不能被计算机所知别,必须讲过转换才能被执⾏,按照转换⽅式,可以将其分为两类,⼀类是编译类,⼀类是解释类
  编译类:就是在应⽤源码程序执⾏之前,就将程序源代码“翻译”成⽬标代码(机器语⾔),因此其⽬标程序可以脱离其语⾔环境独⽴执⾏。使⽤⽐较⽅便,效率也⾼,但是应⽤程序⼀旦需要修改,必须先修改源代码,再重新编译⽣成新的⽬标(*.obj ,也就是OBJ⽂件)才能执⾏,只有⽬标⽂件⽽没有源代码,修改很不⽅便。
  特点:编译后程序运⾏时不需要重新翻译,直接使⽤编译的结果就⾏了。程序执⾏效率⾼,依赖编译器,跨平台性⽐较差,如
C,C++,Delphi等
  优点:1,执⾏程序时候,不需要源代码,不依赖语⾔环境,因为执⾏的是机器源⽂件。
      2,执⾏速度快,因为程序代码已经翻译成计算机可以理解的机器语⾔。
  缺点:1,每次修改了源代码,需要重新编译,⽣成机器编码⽂件
      2,跨平台性不好,不同操作系统,调⽤底层的机器指令不同,需要为不同的平台⽣成不同的机器码⽂件。
  解释类:执⾏⽅式类似于我们⽣活中的“同声翻译”,应⽤程序源代码⼀边由相应语⾔的解释器“翻译”成⽬标代码(机器语⾔),⼀边执⾏,⼀边翻译,因此效率⽐较低。
  特点:效率低,不能⽣成独⽴的可执⾏⽂件,应⽤程序不能脱离其解释器,但是这种⽅式⽐较灵活,可以动态的调整,修改应⽤程序。如Python,Java,PHP,Ruby等语⾔。
  优点:1,⽤户调⽤解释器,执⾏源码⽂件,⽽且可以随时修改,⽴即见效,改完源代码,直接运⾏看结果
      2,解释器把源码⽂件⼀边解释成机器指令,⼀边交给CPU执⾏,天⽣跨平台,因为解释器已经做好了对不同平台的交互处理,⽤户写的源代码不需要考虑平台差异性。
  缺点:1,代码是明⽂
      2,运⾏效率低,所有的代码是需要解释器边解释边执⾏,速度⽐编译型慢很多。
4,执⾏python脚本的两种⽅式是什么?
  1,交互器执⾏,在控制台上运⾏临时输⼊的代码
  2,⽂件操作,执⾏⼀个保存好的py⽂件
  两者的区别是:⼀个是内存操作,⼀个是硬盘操作,
  内存的特点是:读取速度快,但是断电就丢失数据
  硬盘的特点是:速度慢,但可以保存数据
5,声明变量注意事项是什么?
  变量定义规则:
    1,变量名只能是字母,数字或者下划线的任意组合
    2,变量名的第⼀个字符不能是数字
    3,关键字不能⽣命问变量名
  注意事项:
    1,变量名不能过长
    2,变量名词不达意思
    3,变量名为中⽂,拼⾳
6,什么是常量?
  常量指不变的量,或者在程序运⾏过程中不会改变的量
  在python中没有⼀个专门的语法代表常量,程序员约定俗成⽤变量名全部⼤写代表常量
7,python的单⾏注释和多⾏注释分别⽤什么?
  单⾏注释#  多⾏注释"""
  代码注释原则:
    1,不⽤全部加注释,只需要在⾃⼰觉得重要或者不好理解的部分加注释即可
    2,注释可以⽤中⽂或者英⽂,但绝对不要拼⾳
8,布尔值分别有什么?
  布尔类型很简单,就两个值,⼀个是True(真),⼀个是False(假),主要⽤于逻辑判断
9,如何查看变量在内存中的地址?
这⾥使⽤id
print(id.__doc__)
Return the identity of an object.
This is guaranteed to be unique among simultaneously existing objects.
(CPython uses the object's memory address.)
10,写代码
  10-1,实现⽤户输⼊⽤户名,当⽤户名为james,且密码是123456,显⽰登陆成功,否则登陆失败。
_username = "james"
_password = "123456"
username = input("请输⼊名字>>>")
password= input("请输⼊密码>>>")
if username==_username and password==_password:
print("登陆成功")
else:
print("登陆失败")
  10-2,实现⽤户输⼊⽤户名,当⽤户名为james,且密码是123456,显⽰登陆成功,否则登陆失败,失败次数允许重复三次_username = "james"
_password = "123456"
字符串长度如何定义
count =0
while count<3:
username = input("请输⼊名字>>>")
password = input("请输⼊密码>>>")
if username==_username and password==_password:
print("登陆成功")
break
else:
print("登陆失败")
count +=1
  10-3,实现⽤户输⼊⽤户名,当⽤户名为james,或密码是123456,显⽰登陆成功,否则登陆失败,失败次数允许重复三次_username = "james"
_password = "123456"
count =0
while count<3:
username = input("请输⼊名字>>>")
password = input("请输⼊密码>>>")
if username==_username or password==_password:
print("登陆成功")
break
else:
print("登陆失败")
count +=1
11,写代码
a,使⽤while循环实现输出2-3++100的和
count =2
num =0
while count<=100:
if count%2==0:
num = num+count
else:
num = num -count
count+=1
print(num)
b,使⽤while循环实现输出1,2,3,4,5,7,8,9,11,12
count =1
while count<=12:
if count==6 or count==10:
pass
else:
print(count)
count+=1
c,使⽤while循环输出100-50,从⼤到⼩,如100,99,98...,到50时候再从0循环输出到50,然后结束
count = 100
while count >= 50:
print(count)
count -= 1
if count == 49:
count = 0
while count <= 50:
print(count)
count += 1
break
d,使⽤while循环实现输出1-100内所有的奇数
count =0
while count <=100:
if count %2!=0:
print(count)
count +=1
e,使⽤while循环实现输出1-100内所有的偶数
count =0
while count <=100:
if count %2==0:
print(count)
count +=1
12,编程题:输⼊⼀年份,判断该年份是否属于闰年并输出结果
(注意闰年条件:1,能被四整除但不能被⼀百整除,2,能被四百整除)
if number%4==0 and number%100!=0 or number%400==0:
print("%s 是闰年"%number)
else:
print("%s 不是闰年" % number)
13,编程题:假设⼀年期定期利率为3.24%,计算⼀下需要经过多少年,⼀万元的⼀年定期存款连本带息能翻倍?
money =10000
rate = 0.0324
years =0
while money <20000:
years+=1
money  = money*(1+rate)
print(str(years))
14,什么是运算符?
  计算机可以进⾏的运算有很多种,可不⽌加减乘除那么简单,运算按种类可以分为算数运算,⽐较运算,逻辑运算,赋值运算,成员运算,⾝份运算,位运算等
  下⾯简单介绍算术运算,⽐较运算,逻辑运算,赋值运算
15,什么是循环终⽌语句?
  如果在循环的过程中,因为某些原因,你不想继续循环了,怎么把它终⽌掉呢?这就⽤到了break或者continue语句了  break⽤于完全结束⼀个循环,跳出循环体执⾏循环后⾯的语句
  continue和break有点类似,区别在于continue只是终⽌本次循环,接着还执⾏后⾯的循环,break则完全终⽌循环
16,python中断多重循环的⽅法exit_flag
常见的⽅法:
exit_flag = flase
for 循环:
for 循环:
if 条件
exit_flag = true
break  #跳出⾥⾯的循环
if exit_flag:
break  #跳出外⾯的循环
17,基本数据类型和扩展数据类型的分类?
基本数据类型:
  可变数据类型:列表,字典,集合
  不可变数据类型:字符串,元组,数字
扩展性数据类型:
  1,namedtuole():⽣成可以使⽤名字来访问元素内容的tuple⼦类
  2,deque:双端队列,可以快速的从另⼀侧追加和推出对象
  3,counter:计数器,主要⽤来计数

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。