python小测试(一)

这篇博客主要涵盖Python编程的基础知识,包括变量声明、内存地址查看、循环实现数学运算、布尔值、列表和字典操作、循环输出条件判断等。通过一系列练习题,展示了Python编程的基本技巧和常见问题解决方案。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

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

                   答:1.变量名只能用字母、数字或下划线的任意组合

                            2.变量名不能以数字为第一个字符

                           3.内置函数名不能用

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

                     答:id(变量名)

3.写代码:

        a. 使用while循环实现输出2-3+4-5+6...+100 的和

解答:

i,b = 2,0

while i <= 100:#i取2-100

    if i%2 == 0:#判断是偶数

        b = b + i #结果加当前的i     

    else:#基数

        b = b - i #结果减当前i

    i += 1 #判断完自增一

print b

     b. 使用for循环和range实现输出 1-2+3-4+5-6...+99 的和

b = 0 #结果

for i in range(1,100):

    if i%2 == 0:#判断是偶数

        b = b - i #结果加当前的i

    else:#基数

        b = b + i #结果减当前i

    i += 1 #判断完自增一

print b

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

i = 1#初始值

while i < 13: #判断小余13

    if i == 6 or i == 10:#只有6和10不输出,or是或

        pass #啥也不做跳过

    else:

        print(i)

    i += 1

d.使用 while 循环实现输出 1-100 内的所有奇数

i = 1

while i < 101:

    if i%2 == 0:#取2得余数为0为偶数

        pass#啥也不做

    else:

        print(i)

    i += 1

e.使用 while 循环实现输出 1-100 内的所有偶数

i = 1

while i < 101:

    if i%2 == 0:#取2得余数为0为偶数

        print(i)

    else:

        pass#啥也不做

    i += 1

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

n1 = 123456

n2 = n1

                  答:n1的值在内存存在,n2的值是指向n1的值

5.布尔值分别有什么?

                       答:True和False   1和0

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

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

>>>seq[:2]

______[1,2_]______________________

>>>seq[-2:]

_____[3,4_]______________________

>>>seq[10:]

______[ ]______________________

>>>se[::-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 = ['happy', 'lucky', 'linux']

答案:li.append("seven")

            print li

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

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

答案:li.insert(0,"Tony")

            print li

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

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

答案:li[1] = "Kelly"

            print li

e. 请删除列表中的元素 “eric”,并输出修改后的列表

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

答案:li.remove('eric')

            print li

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

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

答案:print li.pop(1)

            print li

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

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

答案:li.pop(2)

            print li

h. 请删除列表中的第 2 至 4 个元素,并输出删除元素后的列表

li = ['happy', 'lucky', 'linux''bhjd','cfer']

答案:for i in range(3):循环3次

            li.pop(1)

            print li

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

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

答案:print li.reverse()

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

a. 请循环输出所有的 key

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

答案:for i in dic.keys():

           print i

b. 请循环输出所有的 value

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

答案:for i in dic.values():

            print i

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

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

答案:for i in dic.keys():

            print i,dic[i]

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]}

答案:b = list(dic["k3"])#读取k3的value,转换成list赋值给B

            b.append(44)#将元素添加至列表B中

            dic["k3"] = b#将列表赋值给k3的value

            print dic

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

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

答案:b = list(dic["k3"])

            b.insert(0,18)

            dic["k3"] = b

            print dic

9.求 1-100 内的所有数的和

答案:

b = 0

for i in range(0,101):

    b = b + i

print b

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

答案:

li = [11,22,33,44,55,66,77,88,99]

l1 = []

l2 = []

for i in li:

    if i >66:

        l1.append(i)

    else:

        l2.append(i)

dict = {"k1":l1,"k2":l2}

print(dict)

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

            答:单行注释-------------- #代码

                    多行注释-------------- “”“代码”“”  

                    多行注释时,快捷键:ctrl+/  

12.九九乘法表输出

13.猴子第一天摘下若干个桃子,当即吃了一半,还不过瘾,又多吃了一个;第二天早上又将剩下的桃子吃掉一半,又多吃了一个。以后每天早上都吃了前一天剩下的半多一个。到第五天早上想再吃时,见只剩下一个桃子了。请编写程序计算猴子第一天共摘了多少桃子

答案:

n = 1

for i in range(4,0,-1):  #这里为4的原因是题目说的是第5天没吃之前(第4天吃完之后)就剩1个桃子了,注意审题 。

    n = (n+1)*2

    print '第%d天没吃之前的桃子数为%d' %(i,x)

14.下面2个变量

a = ‘1’

b = 2

print a + b 的结果是什么,为什么会出现这个结果,如果希望结果是3,要怎么操作?

答案:

TypeError: must be str, not int 不同类型不能相加

print int(a) + b           #int(a)可将变量a强制转化为浮点型数字

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

法一:a[3]

法二:a[-1]

法三:b = list(a)

     b.pop()

16.列表b = [1,2,3,4,5]

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

#方法一:

b.extend([6, 7, 8])

#方法二:

c = b + [6, 7, 8]

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

#方法一:

b = [1,2,3,4,5]

print b[-1:-3:-1]

#方法二:

c = []

c.append(b.pop())

c.append(b.pop())

print c

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

if 2 in b:

    print '2 in b'

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值