Python基础练习

1、 执行 Python 脚本的两种方式

./python.py

python python.py

2、 简述位、字节的关系

1字节 = 8位

字节(byte)是常用的计算机存储单位

最小的存储单位称为位(bit)

 

3、 简述 ascii、unicode、utf-­‐8、gbk 的关系

ASCII 英文

Unicode =utf-16 utf-8 (Unicode是统一码)

GBK 中文

4、 请写出  “李杰”  分别用 utf-­‐8 和 gbk 编码所占的位数

utf-8       24

gbk         16

utf-8 一个汉字:三个字节 
gbk
一个汉字:二个字节

5、 Pyhton 单行注释和多行注释分别用什么?

单行 #

多行  ’’’   ‘’’

 (选中内容 ctrl+? 进行任意注释)

6、 声明变量注意事项有那些?

由字母、数字、下划线的组合,不允许数字开头,不允许有特殊字符。可以下划线开头

变量声明最好不要是关键字

7、 如有一下变量 n1  =  5,请使用 int 的提供的方法,得到该变量最少可以用多少个二进制位表示?

三个 101

8、布尔值分别有什么?

  True(其它) False(0) 

9、阅读代码,请写出执行结果     

    a  =  " dawn"

    b  =  a.capitalize()

    print(a)

    print(b)

请写出输出结果:

dawn

Dawn

10、写代码,有如下变量,请按照要求实现每个功能  

    name  =  "  dawN"

a.移除 name 变量对应的值两边的空格,并输入移除后的内容

print(name.stripe())

b.判断 name 变量对应的值是否以  "al"  开头,并输出结果 

print(name.startswith())

c.判断 name 变量对应的值是否以  "X"  结尾,并输出结果

print(name.endswith())

d.将 name 变量对应的值中的  “l”  替换为  “p”,并输出结果

print(name.replace("l", "p"))

   e.  将 name 变量对应的值根据  “l”  分割,并输出结果。

print(name.split('l'))

f.请问,上一题  e  分割之后得到值是什么类型(可选)?

列表

g.将 name 变量对应的值变大写,并输出结果

print(name.upper())

h.将 name 变量对应的值变小写,并输出结果

print(name.lower())

i.请输出 name 变量对应的值的第 2 个字符?

print(name[1])

j.请输出 name 变量对应的值的前 3 个字符?

for temp in range(0, 3):
    print(temp, name[temp])

k.请输出 name 变量对应的值的后 2 个字符?

for temp in range(-2, 0):
     print(temp, name[temp])

l.请输出 name 变量对应的值中  “w”  所在索引位置?

print(name.index("e"))

m.获取子序列,仅不包含最后一个字符。如:  oldboy  则获取  oldbo;  root  则获取  roo

m = input(">>>")
print(m[:-1])

11、字符串是否可迭代对象?如可以请使用 for 循环每一个元素?

        字符串可迭代

        for key in name:

              print (key)

12、请用代码实现:

a.  利用下划线将列表的每一个元素拼接成字符串,li  =  "alexericrain"

print('_'.join('alexjoinrain')

b.  利用下划线将列表的每一个元素拼接成字符串,li  =  ['alex',  'eric',  'rain']    (可选)

print( '_'.join(['alex','ton', 'ccoco'])

13、Python2 中的 range 和 Python3 中的 range 的区别?

python2中的range返回的是一个列表    python2中rang立即创建

python3中的range返回的是一个迭代值  python3中rang for循环时才会一个一个创建

for i in range(1,10)python2python3中都可以使用,但是要生成1-10的列表,就需要用list(range(1,10))

 

14、实现一个整数加法计算器:

    如:

        content  =  input('请输入内容:')    #  如:  5+9  或  5+  9  或  5  +  9  

s = input(">>>")
v1, v2 = s.split('+')
print(int(v1) + int(v2))

 

15、计算用户输入的内容中有几个十进制小数?几个字母?

    如:

        content  =  input('请输入内容:')    #  如:asduiaf878123jkjsfd-­‐213928

num = 0
zimu = 0
item = input(">>>")
for temp in item:
    if temp.isdecimal() == True:
        num += 1
    elif temp.isalpha() == True:
        zimu += 1
    else:
        pass
print("字母个数为:", zimu)
print('数字个数为:', num)

16、简述  int  和  9  等数字   以及   str  和  "xxoo"  等字符串的关系?

int和9,str和“xxoo”的关系为 类

和对象的关系

(int 整形可以运算

int 可以转成str

str 只能拼接,不可以运算

17、制作趣味模板程序

    需求:等待用户输入名字、地点、爱好,根据用户的名字和爱好进行任意现实

         

         如:敬爱可亲的 xxx,最喜欢在 xxx 地方干 xxx

temp = ("帅气聪明的{0},今天在{1},{2}")
name = input("请输入你的姓名:")
place = input("请输入你喜欢去的地方:")
favorite = input("请输入你喜欢做的事情:")
print(temp.format(name, place, favorite))

18、制作随机验证码,不区分大小写。

    流程:

        -­‐  用户执行程序

        -­‐  给用户显示需要输入的验证码

        -­‐  用户输入的值

            用户输入的值和显示的值相同时现实正确信息;否则继续生成随机验证码继续等待用户输入

        生成随机验证码

代码示例:       

def check_code():
    import random
    check_code = ''
    for
i in range(4):

        current = random.randrange(0,4)
        if current != i:
            temp = chr(random.randint(65,90))
        else:
            temp = random.randint(0,9)
        check_code += str(temp)
    return check_code
code = check_code()
print(code)

def check_code():
    import random
    check_code = ''
    for i in range(4):
        current = random.randrange(0,4)
        if current != i:
            temp = chr(random.randint(65,90))
        else:
            temp = random.randint(0,9)
        check_code += str(temp)
    return check_code
code = check_code()
while True:
    code = check_code()
    print (code)
    v = input('请输入验证码>>>>')
    v1 = v.upper()
    if v1 == code:
        print ('验证码正确')
        break
    else:
        pass

 

 

19、开发敏感词语过滤程序,提示用户输入内容,如果用户输入的内容中包含特殊的字符:

如  "苍老师"  "东京热",则将内容替换为  ***

shuru = input(">>>")
shuru = shuru.replace("苍老师", "***")
shuru = shuru.replace("东京热", "***")
print(shuru)

 

20、制作表格  

    循环提示用户输入:用户名、密码、邮箱  (要求用户输入的长度不超过 20 个字符,如果超过则只有前 20 个字符有效)

如果用户输入  q 或 Q  表示不再继续输入,将用户输入的内容以表格形式打印

W = "用户名\t密码\t邮箱\n"
while 1 == 1:
    name = input("用户名:")
    if name == "q" or name == "Q" or name == "no":
        print(w)
        break
    passwd = input("密码:")
    if passwd == "q" or passwd == "Q" or quit == "no":
        print(w)
        break

    mail = input("邮箱:")
    if mail == "q" or mail == "Q" or mail == "no":
        print(w)
        break
    Name = name[0:20]
    Pwd = passwd[0:20]
    Mail = mail[0:20]
    b = "{0}\t{1}\t{2}\n".format(Name,Pwd,Mail)#形式一样的字符串可以相加
    W = W + b
    w = W.expandtabs(20)
    continue

猜你喜欢

转载自www.cnblogs.com/hym510/p/9280377.html