python JOB(作业)


1.执行python脚本两种方式

1.1 在终端输入:python
1.2 在终端输入:python 1.py


2.简述位和字节的关系

2.1 1个字节8个位
2.2  计算机处理都是以"字节"来为单位,而"存储"是用"位"为单位


3.简述ASCII,Unicode,Utf-8,Gbk的关系

3.1 它们的出现的先后顺序:ASCII,Unicode,UTF-8
3.2 unicodeutf-8等就不同了,这些编码里面汉字长度不是一定的,有的长、有的短,2~4字节,1个汉字是用3个字节来表示
3.3 ASCIIGBKGB2312编码,一个汉字占两个字节


4.分别在Python2.7和Python3中用汉字"李杰"来表示字节和字符


python 3 默认是用UTF-8编码
name = "李杰"
v = len(name)
print(v) 返回的结果是:2 这里的2表示字符的个数


python 2.7 用UTF-8编码

name = "李杰"
v = len(name)
print(v) 返回结果:6 这里的6表示字节个数,1个汉字是3个字节


如果用GBK和ASCII来表示"李杰"那就是4个字节,因为在这两个编码中1个汉字是2个字节 


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

5.1 单行注释用:
5.2 多行注释用: """ """

6.声明变量注意事项

6.1 数字:不能以数字开头
6.2 字母: 不能用python内置关键字来作变量
6.3 下划线:


7 如果变量 n = 5 请使用int 方法得到该变量最少可以用多少个二进制位表示?

n = 5

v = n.bit_length()

print(v) 返回结果是:3 最少可以用3个二进制位表示:101

8 布尔值分别有什么?

8.1 False
8.2 True


9 阅读代码 并输出结果

a = "alex"

b = a.capitalize()
print(a) 返回的结果是: alex
print(b) 返回的结果是: Alex

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

name = " alex"

10.1 移除name变量对应值两边的空格,并输出移除后的内容

v1 = name.strip()
print(v1) 返回的结果:alex

10.2 判断name变量对应的值是否以"al"开头,并输出内容

v2 = name.startswith("al")
print(v2) 返回的结果:False ,因为前面有空格


10.3判断name变量对应的值是否以"x"结尾并输出内容

v3 = name.endswith("x")
print(v3) 返回的结果:True


10.4 将name变量对应值中的"l"替换成"p",并输出结果

v4 = name.replace("l","p")
print(v4) 返回的结果:apex

10.5 将name变量对应的值,根据"l"分割,并输出结果

v5 = name.split("l")
print(v5) 返回的结果:[' a', 'ex']


10.6 请问上一题10.5中分割之后得到的值是什么类型(可选)?

列表类型


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

v7 = name.upper()
print(v7) 返回的结果:ALEX

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

v8 = name.lower()
print(v8) 返回的结果: alex


10.9 请输出name变量对应值的第2个字符

v9 = name[1]
print(v9) 返回的结果: a


10.10 请输出name变量对应值的前3个字符

v10 = name[:3]
print(v10) 返回的结果:空格al

11.字符串是否是可迭代对象,如果是请用for循环每个元素

name = "diskpart"
for i in name:
print(i)
""" 输出结果如下
d
i
s
k
p
a
r
t

"""


"""
我们所说的str(字符串),int(数字)、列表、元组等等,这都是类型,然后我们在类型中创建对象,比喻说下面的例子


name = "alex" :我们可以这样说:在字符串类型下面创建了一个name的对象

"""


12.请用代码实现


12.1 利用下划线将列表的每个元素拼接成字符串,li = "alexericrain"
12.2 利用下划线将列表的每个元素拼接成字符串, li =["alex","eric","rain"]

li = "alexericrain"
v1 = "_".join(li)
print(v1) #返回结果是:a_l_e_x_e_r_i_c_r_a_i_n



li = ["alex","eric","rain"]
v2 = "_".join(li)
print(v2) #返回结果是:alex_eric_rain



13 .python2中的range和python3中的range区别?


13.1 python2中的range是立即创建
13.2 python3中的range是for循环时候才一个一个创建
for i in range(100,0,-1): 从大到小循环每一次减1


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

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

content = input("请输入内容:")
print(content) # 返回结果是:字符串"5+10"
v1, v2 = content.split("+") # 以加号来分割字符串,且不保留指定字符,并把分割后的结果赋值给v1和v2
print(type(v1), v1, type(v2), v2) # 返回的结果:字符串10和9
v1 = int(v1) # 把v1转换成int
v2 = int(v2) # 把v2转换成int
v3 = v1 + v2
print(v3)



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


count1 = 0
count2 = 0
content = input("请输入内容:") # 如sdfsadfsdaf080980239jjoojo2342342

for item in content:
if item.isdigit():
count1 = count1 + 1
elif item.isalpha():
count2 = count2 + 1
print("一共有数字%d个"%count1)
print("一共有字母%d个"%count2)


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

在python中int、str、list、tuple、dict我们都统称为类,而在相应的类下面一个变量我们称为对象



17.制作趣味模版程序


需求:等待用户输入名字、地点、爱好、根据输入的名字和地点以及爱好任意输出
name = input("请输入name>>>:")
location= input("请输入location>>>:")
hobby = input("请输入hobby>>>:")

第1种写法
print("name:%s"%name)
print("location%s"%location)
print("hobby%s"%hobby)

第2种写法
print("name:{0},location:{1},hobby:{2}".format(name,location,hobby))


第3种另类写法
information = "name:{0},location:{1},hobby:{2}"
v = information.format("yuxianming","wuhan","pyton")
print(v)


18.制作随机验证码:此处略过

 

 

19.开发敏感词过滤程序,提示用户输入内容,如果用户输入的内容中包含了特殊字符,如"小李子"和"python",则被内容替换为*****


input_test = input("请输入>>>>:")
input_test = input_test.replace("小李子","****")
input_test = input_test.replace("python","****")
print(input_test)



20.制作表格

"""
需求:循环提示用户输入,用户名、密码、邮箱(要求用户的输入的长度不超过20个字符,如果超过只有20个字符有效,如果用户
输入"q"或者"Q"表示不在继续输入,将用户输入的内容以表格显示 )
"""

s = ""
while True:
name = input("name>>>:")
if name=="q" or name =="Q":
break
password = input("password>>>:")
email= input("email>>>:")
v = "{0} {1} {2} "
v1 =v.format(name,password,email)
s = s+v1
print(s.expandtabs(20))

""""""""""""""""""""""""购物车程序编写""""""""""""""""""""""""""""""""""""""""""

# 创建充值列表
print("只能充值10,17,12,15,19的币种")
input_rmb = [10, 12, 15, 17, 19]
input_log = True
rmb_count = 0
while input_log:
    input_list = input("请输入(按q键退出)>>>>:")
    if input_list == "q":
        print("退出程序,共充值%s元" % rmb_count)
        break
    elif input_list.isdigit():
        input_list = int(input_list)
        if input_list not in input_rmb:
            print("只能输入:", input_rmb)
            continue

    elif input_list.isdigit() == False:
        print("输入不合法,请重新输入......")
        continue
    rmb_count = rmb_count + input_list

#创建商品列表
shopping_list={

    "kele":12,
    "niunai":15,
    "molihua":3,
    "tieguanying":24

}
codeing=0
name ="商品信息"
print(name.center(20,"*"))
for k,v in shopping_list.items():
    codeing=codeing+1
    print("商品编码:%s,商品名称:%s,商品价格:%s"%(codeing,k,v))
name1="end"
print(name1.center(25,"*"))

#客户选选择购买商品

kong_list = []
while True:
    code_input=input("请输入商品编码(按q键退出)>>>>:")
    if code_input == "q":
        print("退出系统.....")
        break

    elif code_input.isdigit()==False:
        print("输入非法.....请重新输入")
        continue
    else:
        if code_input.isdigit():
            code_input=int(code_input)
            if code_input>0 and code_input<len(shopping_list):
                x=0
                for k1,v1 in shopping_list.items():
                    x=x+1
                    if x==code_input:
                        if rmb_count>0:
                            rmb_count=rmb_count-v1
                            kong_list.append(k1)
                        else:
                            print("余额不足您还剩余%s元欢迎下次光临....."%rmb_count)
            else:
                print("只能输入0到%s之间的数字...."%len(shopping_list))
                continue
#系统找零

if rmb_count>0:
    print("您一共购买%s个商品,还剩余%s元"%(len(kong_list),rmb_count))
else:
    print("余额不足请重新充值.....")



原文地址:https://www.cnblogs.com/yuxianming/p/9277411.html