主要为了做自己的自学笔记,以下部分答案引用了大佬的答案,侵删。
1.简述编译型与解释型语言的区别,且分别列出你知道的哪些语言属于编译型,哪些属于解释型?
高级语言分为编译型与解释型两种,分别从执行速度、开发效率、跨平台性三个方面说它们的区别。
编译型语言因为执行的是机器码文件,所以执行速度快且不依赖解释器,但每次修改源代码都需要重新编译,所以导致开发效率低,不同的操作系统,调用的底层机器指令不同,所以跨平台性差。
解释型语言需要解释器边把源文件解释成机器指令边交给cpu执行,所以执行速度要比编译型慢很多,但是每次修改时立刻见效,所以开发效率很高,解释器已经做好了对不同操作系统的交互处理,天生跨平台。
C/C++/C#/Delphi/Go属于编译型,PHP/Java/JavaScript/Python/Perl/Ruby属于解释型。
2.Pyhton 单行注释和多行注释分别用什么?
单行注释:#要注释内容
多行注释:"""要注释内容""" 或者'''要注释内容'''
3.布尔值分别有什么,及作用是什么?
布尔值(Booleans)是一个逻辑值. 只有 true 和 false (真和假).
4.声明变量注意事项有那些?
(1)变量由数字、字母和下划线组成
(2)变量不能以数字开头
(3)变量不能使用Python关键字[‘and’, ‘as’, ‘assert’, ‘break’, ‘class’, ‘continue’, ‘def’, ‘del’, ‘elif’, ‘else’, ‘except’, ‘exec’, ‘finally’, ‘for’, ‘from’, ‘global’, ‘if’, ‘import’, ‘in’, ‘is’, ‘lambda’, ‘not’, ‘or’, ‘pass’, ‘print’, ‘raise’, ‘return’, ‘try’, ‘while’, ‘with’, ‘yield’]
(4)变量区分大小写
5.如何查看变量在内存中的地址?
id(变量名)
6.请写出 and 、or、not 的作用,并用代码来演示
以下假设变量:a=10,b=20
7.查看2、2.22、“小猿圈”分别是什么数据类型的语法是什么?
int整型,float浮点型,string字符串型
8.写代码
(1)实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败!
_username = "seven"
_password = "123"
username = input("用户名:")
password = input("密码:")
if username == _username and password == _password:
print("登陆成功!")
else:
print("登陆失败!")
(2)实现用户输入用户名和密码,当用户名为 seven 且 密码为 123 时,显示登陆成功,否则登陆失败,失败时允许重复输入三次
_username = "seven"
_password = "123"
count = 0
while count < 3:
count += 1
username = input("用户名:")
password = input("密码:")
if username == _username and password == _password:
print("登陆成功!")
break
else:
print("登陆失败!")
(3)实现用户输入用户名和密码,当用户名为 seven 或 alex 且 密码为 123 时,显示登陆成功,否则登陆失败,失败时允许重复输入三次
_username = ['seven', 'alex']
_password = "123"
count = 0
while count < 3:
count += 1
username = input("用户名:")
password = input("密码:")
if username in _username and password == _password:
print("登陆成功!")
break
else:
print("登陆失败!")
9.写代码
a. 使用 while 循环实现输出 1,2,3,4,5, 7,8,9, 11,12
count = 0
while count < 12:
count += 1
if count != 6 and count != 10:
print(count)
b. 使用while 循环输出100-50,从大到小,如100,99,98…,到50时再从0循环输出到50,然后结束
count = 101
while count > 50:
count -= 1
print(count)
if count == 50:
count = 0
while count < 51:
print(count)
count += 1
break
c. 使用 while 循环实现输出 1-100 内的所有奇数
count = 0
while count < 100:
count += 1
if count % 2 != 0:
print(count)
d. 使用 while 循环实现输出 1-100 内的所有偶数
count = 0
while count <= 100:
count += 1
if count % 2 == 0:
print(count)
e. 使用while循环实现输出2-3+4-5+6…+100 的和
count = 1
number = 0
while count < 100:
count += 1
if count % 2 == 0:
number += count
else:
number -= count
print(number)
10.现有如下两个变量,请根据执行结果解释原因
n1 = 123456
n2 = n1
n1 = 333
print(n1,n2)
333 123456,因为id(n2)指向的是内存中123456的内存地址,id(n1)重新指向了333的内存地址。
11.练习:用户输入姓名、年龄、工作、爱好 ,然后打印成以下格式
------------ info of Egon -----------
Name : Egon
Age : 22
Sex : male
Job : Teacher
------------- end -----------------
name = input("Name:")
age = input("Age:")
sex = input("Sex:")
job = input("Job:")
info ='''
---------- info of %s -----------
Name : %s
Age : %s
Sex : %s
Job : %s
------------- end ---------------
'''%(name,name,age,sex,job)
print(info)
12.输入一年份,判断该年份是否是闰年并输出结果。(编程题)
注:凡符合下面两个条件之一的年份是闰年。(1)能被4整除但不能被100整除。 (2) 能被400整除。
year = int(input("输入一个年份判断是不是闰年:"))
if year % 4 == 0:
if year % 400 == 0:
print(year,"是闰年")
elif year % 100 == 0:
print(year,"不是闰年")
else:
print(year,"是闰年" )
else:
print(year,"不是闰年" )
13.假设一年期定期利率为3.25%,计算一下需要过多少年,一万元的一年定期存款连本带息能翻番?(编程题)
money = 10000
years = 0
rate = 0.0325
while money <= 20000:
years += 1
money = money * (1+rate)
print(str(years)+"年以后,一万元的一年定期存款连本带息能翻番")
14.使用while,完成以下图形的输出
*
* *
* * *
* * * *
* * * * *
* * * *
* * *
* *
*
i = 1
num = 4
while i < 6:
print("*"*i)
i += 1
while i > 5 and i < 10:
print("*"*num)
num-=1
i+=1
num = int(input("请输入要生成的行数N:"))
i = 1 # 行数
while i <= num:
if i <= num - i: # 增
k = i # 每行生成的个数
while k > 0:
print("*", end='')
k -= 1
print("\n")
else: # 减
k = num - i + 1 # 生成的个数
while k > 0:
print("*", end='')
k -= 1
print("\n")
i += 1
15.一球从100米高度自由落下,每次落地后反跳回原高度的一半;再落下,求它在第10次落地时,共经过多少米?第10次反弹多高?
height = 100
distance = 100
time1 = int(input("请输入小球落地的次数"))
time = time1
while time > 0:
time -= 1
height = height/2
print('''小球反弹 %s 次的高度为%f米''' % (time1,height))
time2 = time1-1
height = 100
while time2 > 0:
time2 -= 1
height = height/2
distance += (2*height)
print('''小球落地 %s 次经过%f米''' % (time1,distance))