python:常见的基础练习题

1.声明变量注意事项有那些?

首字母只能是字母或下划线,其余字母只能是字母、下划线或数字,不能是特殊符号。不能是关键字。

2.如何查看变量在内存中的地址?

id(变量)

3.写代码
a. 判断变量名是否合法?

"""
判断变量是否合法
"""
a = input('请输入变量')
if a[0] == '_' or a[0].isalpha():
    for i in a[1:]:
	if i == '_' or i.isalnum():
	    continue
	else:
	    print('不合法')
	    break
	print('合法')
else:
    print('不合法')

b. 输出 1-2+3-4+5-6…+99 的和

"""
输出 1-2+3-4+5-6...+99 的和
"""
num1 = 0
num2 = 0
for a in range(1, 100, 2):
    num1 += a
for b in range(2, 100, 2):
    num2 += b
print(num1 - num2)

c.使用 while 循环实现输出 1,2,3,4,5, 7,8,9, 11,12

"""
使用 while 循环实现输出 1,2,3,4,5, 7,8,9, 11,12
"""
i = 1
s=[]
while i < 13:
    if i == 6 or i == 10:
	i += 1
	continue
    else:
	s.append(i)
    i += 1
print(s)

e.完成用户管理系统:实现功能如下
1). 注册新用户
2). 用户登录
3). 注销用户
4). 显示用户信息
5). 退出系统(exit(0))

"""
    1). 注册新用户
    2). 用户登录
    3). 注销用户
    4). 显示用户信息
    5). 退出系统(exit(0))

"""
users = ['root', 'westos']
passwds = ['123', '123']
while True:
    print('''
	1). 注册新用户
	2). 用户登录
	3). 注销用户
	4). 显示用户信息
	5). 退出系统(exit(0))
	''')
    choice = int(input('请输入您的操作'))
    if choice == 1:
	user1 = input('请输入注册用户名')
	pass1 = input('请输入注册用户密码')
	if user1 in users:
	    print('此用户已存在')
	else:
	    users.append(user1)
	    passwds.append(pass1)
	    print('用户注册成功')
    if choice == 2:
	user2 = input('输入用户名')
	pass2 = input('输入密码')
	if user2 in users and pass2 == passwds[users.index(user2)]:
	    print('用户登陆成功')
    if choice == 3:
	user3 = input('请输入注销的用户名')
	if user3 in users:
	    a = users.index(user3)
	    users.remove(user3)
	    passwds.pop(a)
	    print('已删除此用户')
	else:
	    print('没有该用户')
    if choice == 4:
	print('用户\t\t密码')
	for i in users:
	    print(i, passwds[users.index(i)])
    if choice == 5:
	break

h: 将列表中所有内容都变为小写;
li = [‘frdgrfgdsHHJJ’, ‘cdsfregHHHJDGF’]

"""
将列表中所有内容都变为小写;

"""

li = ['frdgrfgdsHHJJ', 'cdsfregHHHJDGF']
print(li)
a = li[0].lower()
b = li[1].lower()
li1 = [a, b]
print(li1)

4.现有如下两个变量,请简述 n1 和 n2 是什么关系?
n1 = 123456
n2 = n1

id相同,两者是一个东西

5.布尔值分别有什么?

	True False

6.请在下面的空白处填写运行结果

>>>seq = [1, 2, 3, 4]
>>>seq[:2]

运行结果:[1,2]
________________________
>>>seq[-2:]
运行结果:[3,4]
________________________
>>>seq[10:]

运行结果:[]
________________________
>>>seq[::-1]
运行结果:[4,3,2,1]
________________________
>>>seq[:]
运行结果:[1,2,3,4]
________________________
>>> id(seq[:]) == id(seq)
运行结果:False
________________________

7.写代码,有如下列表,按照要求实现每一个功能
li = [‘happy’, ‘lucky’, ‘linux’]
a. 计算列表长度并输出

li = ['happy', 'lucky', 'linux']
print(len(li))

b. 列表中追加元素 “seven”,并输出添加后的列表

li.append('seven')
print(li)

c. 请在列表的第 1 个位置插入元素 “Tony”,并输出添加后的列表

li.insert(0, 'Tony')
print(li)

d. 请修改列表第 2 个位置的元素为 “Kelly”,并输出修改后的列表

li[1]='Kelly'
print(li)

e. 请删除列表中的第 2 个元素,并输出删除的元素的值和删除元素后的列表

a = li.pop(1)
print(li)
print(a)

f. 请删除列表中的第 3 个元素,并输出删除元素后的列表

li.pop(2)
print(li)	

g. 请删除列表中的第 2 至 4 个元素,并输出删除元素后的列表
方法一:

li = ['happy', 'lucky', 'linux', 'jj']
li.pop(1)
li.pop(1)
li.pop(1)

print(li)

方法二:

li = ['happy', 'lucky', 'linux', 'jj']

a = li[:2] + li[4:]
print(a)

h. 请将列表所有的元素反转,并输出反转后的列表

print(li[::-1])

8.字典 dic = {‘k1’: “v1”, “k2”: “v2”, “k3”: [11,22,33]}
a. 请循环输出所有的 key

dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}

for key in dic:
	print(key)

b. 请循环输出所有的 value

dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}

for j in dic.values():
	 print(format(j))	

c.请循环输出所有的 key 和 value

dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
for value in dic.items():
    print(value)	

d.请在修改字典中 “k1” 对应的值为 “harry”,输出修改后的字典

dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
dic['k1'] = 'harry'
print(dic)

e.请在 k3 对应的值中追加一个元素 44,输出修改后的字典

dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
dic['k3'].append(44)
print(dic)

f.请在 k3 对应的值的第 1 个位置插入个元素 18,输出修改后的字典

dic = {'k1': "v1", "k2": "v2", "k3": [11,22,33]}
dic['k3'].insert(0,18)
print(dic)

9.重复的单词: 此处认为单词之间以空格为分隔符, 并且不包含,和.;
#1. 用户输入一句英文句子;
#2. 打印出每个单词及其重复的次数;

	word = input('请输入一句英语')
	a = {}

	word1 = word.split(' ')


	for i in word1:
	    if i in a:
		a[i] += 1
	    else:
		a[i] = 1
	for k,v in a.items():
	    print(k,v)

10.元素分类 有如下值集合 [11,22,33,44,55,66,77,88,99,90],将所有大于 66 的值保存至字典的第一个 key 中,将小于 66 的值保存至第二个 key 的值中 即: {‘k1’: 大于 66 的所有值, ‘k2’: 小于 66 的所有值}

dict1 = {}
li1 = []
li2 = []
a = [11, 22, 33, 44, 55, 66, 77, 88, 99, 90]
for i in a:
    if i > 66:
	li1.append(i)
    if i < 66:
	li2.append(i)
dict1['k1'] = li1
dict1['k2'] = li2
print(dict1)

11.Pyhton 单行注释和多行注释分别用什么?

单行注释:#
多行注释:"""
	注释内容
	"""

12.九九乘法表输出

	i = 1
	while i <=9:
	    j = 1
	    while j <=i:
		k = i * j
		print('%d *%d =%d\t' % (i, j, k),end='')
		j += 1
	    print('    ')
	    i += 1

13.求两个数的最大公约数和最小公倍数

a = int(input('请输入数字'))
b = int(input('请输入数字'))
for i in range(1,min(a+1, b+1)):
    if a % i == 0 and b % i == 0:
	c = i
    else:
	continue
d = (a * b) / c
print('%d和%d的最小公倍数是%d最大公约数是%d' % (a, b, d, c))

14.下面2个变量
a = ‘1’
b = 2
print a + b 的结果是什么,为什么会出现这个结果,如果希望结果是3,要怎么操作?

结果错误,字符类型不同,a1=int(a),print(a1+b)结果为3

15.字符串: a = ‘abcd’, 用2个方法取出字母d
方法一:

a = 'abcd'
print( a[-1])

方法二:

a = 'abcd'
print( a[3])

16.列表b = [1,2,3,4,5]
(1).用2种方法输出下面的结果:[1,2,3,4,5,6,7,8]
方法一:

b = [1, 2, 3, 4, 5]
b.append(6)
b.append(7)
b.append(8)
print(b)

方法二:

b = [1, 2, 3, 4, 5]
b.extend([6,7,8])
print(b)

(2).用列表的2种方法返回结果:[5,4]
方法一:

b = [1, 2, 3, 4, 5]
s = [b[4],b[3]]
print(s)

方法二:

b = [1, 2, 3, 4, 5]
s = [b[-1],b[-2]]
print(s)

(3).判断2是否在列表里

b = [1, 2, 3, 4, 5]
print(2 in b)

你可能感兴趣的:(python)