1.执行python脚本的两种方式:

答:1、./run.py.shell直接调用python脚本

2、python run.py 调用python 解释器来调用python脚本

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

答:单行注释用#,多行注释用三引号

6.声明变量注意事项有哪些?

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

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

3.python关键字不能用作变量名

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

答:用id(变量名) 即可查看变量在内存中的地址

9.执行python程序时,自动生成的.pyc文件的作用是什么?

答:pyc是一种二进制文件,是由py文件经过编译后,生成的文件,是一种byte code,py文件变成pyc文件后,加载的速度有所提高,而且pyc是一种跨平台的字节码,是由python的虚拟机来执行的,py文件是可以直接看到源码的,所以就需要编译为pyc后,再发布出去,实现部分源码的隐藏.

10.写代码

a.实现用户输入用户名和密码,当用户名为seven且密码为123时,显示登陆成功,否则显示登陆失败.

  1. name=input("请输入用户名:").strip()
  2. pwd=input("请输入密码:").strip()
  3. if name=="seven" and pwd=="":
  4. print("登陆成功")
  5. else:
  6. print("登陆失败")

b.实现用户输入用户名和密码,当用户名为seven且密码为123时,显示登陆成功,否则显示登陆失败.失败时允许重复输入3次

  1. count=0
  2. while count<3:
  3. count+=1
  4. name=input("请输入用户名:").strip()
  5. pwd=input("请输入密码:").strip()
  6. if name=="seven" and pwd=="":
  7. print("登陆成功")
  8. break
  9. else:
  10. print("登陆失败")
  11. continue

c.实现用户输入用户名和密码,当用户名为seven且密码为123时,显示登陆成功,否则显示登陆失败.失败时允许重复输入3次

  1. count=0
  2. while count<3:
  3. count+=1
  4. name=input("请输入用户名:").strip()
  5. pwd=input("请输入密码:").strip()
  6. if name=="seven"or name=="alex" and pwd=="":
  7. print("登陆成功")
  8. break
  9. else:
  10. print("登陆失败")
  11. continue

11.写代码

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

  1. count=1
  2. s=0
  3. while count<100:
  4. count+=1
  5. s+=(-1)**count*count
  6. print(s)

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

  1. s=0
  2. for i in range(1,100):
  3. s+=-(-1)**i*i
  4. print(s)

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

  1. count=0
  2. while count<12:
  3. count+=1
  4. if count==6 or count==10:
  5. continue
  6. print(count,end=" ")

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

  1. count=0
  2. while count<100:
  3. count+=1
  4. if count%2!=0:
  5. print(count)

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

  1. count=0
  2. while count<100:
  3. count+=1
  4. if count%2==0:
  5. print(count)

11.分别书写数字5,10,32,7的二进制

  1. #5=2**2+2**0
  2. #5对应的二进制为 101
  3. print(bin(5))
  4.  
  5. #10=2**3+2**1
  6. #10对应的二进制为1010
  7. print(bin(10))
  8.  
  9. #32=2**5
  10. #32对应的二进制为100000
  11. print(bin(32))
  12.  
  13. #7=2**2+2**1+2**0
  14. #7对应的二进制 111
  15. print(bin(7))

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

n1=123

n2=123

答: n1和n2的id(内存地址) 值 和type都相等

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

n1=123456

n2=123456

答:n1和n2的id(内存地址)不等 type不同,值相同,分别指向两个相同的数值123456

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

n1=123456

n2=n1

答:n1和n2的id(内存地址) 值 和type都相等

17.如果有一个变量n=5,请使用int提供的方法,得到该变量最少可以用多少个二进制表示?

n=5
print(n.bit_length())

18.布尔值分别有什么?

答:布尔值有True和False

19.阅读代码,写出执行结果:

a="alex"
b=a.capitalize()
print(a)
print(b)

答:alex  Alex

20.写代码,有如下代码,按要求实现每个功能:

name=" aleX"

  1. __author__ = 'Administrator'
  2. name=" aleX"
  3. #a.移除两边对应的空格,并输入移除后的内容
  4. print(name.strip())
  5. #b.判断name变量对应的值是否以“al”开头,并输出结果
  6. print(name.startswith("al"))
  7. #c.判断name变量对应的值是否以“X”结尾,并输出结果
  8. print(name.endswith("X"))
  9. #d.将name变量值中的“l”替换为“p‘并输出结果
  10. print(name.replace("l","p"))
  11. #e.将name变量对应的值根据”l“切分,并输出结果
  12. print(name.split("l"))
  13. #f.上一题e中分割之后的值是什么类型
  14. print(type(name.split("l")))
  15. #g.将name变量对应的值变为大写,并输出值
  16. print(name.upper())
  17. #h.将name变量对应的值变为小写,并输出值
  18. print(name.lower())
  19. #i请输出name变量对应的值的第二个字符
  20. print(name[1])
  21. #j请输出name变量对应的值的前3个字符
  22. print(name[:3])
  23. #k请输出name变量对应的值的后2个字符
  24. print(name[-2:])
  25. #l 请输出name变量对应的值中”e“所在的索引位置
  26. print(name.index("e"))

 

21.字符串是否可以迭代,如果可以请使用否循环迭代每一个元素。

答:可以的

a="abcdefg"
for i in range(len(a)):
    print(a[i])

22.写代码,按要求实现功能

  1. __author__ = 'Administrator'
  2. li=["alex","erin","rain","aa","bb","cc"]
  3. #a.计算列表的长度并输出
  4. print(len(li))
  5. #b.列表中追加元素”seven“,并输出添加后的列表
  6. li.append("seven")
  7. print(li)
  8. #c.请在列表的第一个位置插入元素”tony“,并输出添加后的列表
  9. li.insert(0,"Tony")
  10. print(li)
  11. #d.请修改列表第二个元素为"kelly",并输出修改后的列表
  12. li[1]="kelly"
  13. print(li)
  14. #e.请删除列表中的”eric“,并输出修改后的列表
  15. li.remove("erin")
  16. print(li)
  17. #f.删除列表的第二个元素,并输出删除的元素和删除后的列表
  18. aa=li.pop(1)
  19. print(aa)
  20. print(li)
  21. #g请删除列表中的第三个元素,并输出删除后的列表
  22. li.pop(2)
  23. print(li)
  24. #h.请删除列表中的第2-4个元素,比输出删除后的列表
  25. li.pop(1)
  26. li.pop(1)
  27. li.pop(1)
  28. print(li)
  29. #i将列表所有元素反转,并输出反转后的列表
  30. li.reverse()
  31. print(li)
  32. #j请使用for in range 输出列表的索引
  33. for i in range(len(li)):
  34. print(i)
  35. #k请使用enumberate输出列表元素和序号(序号从100开始)
  36. for i,j in enumerate(li,start=100):
  37. print(i,j)
  38. #l请使用for循环输出所有元素
  39. for i in li:
  40. print(i)

23.写代码,按要求实现功能:

li=["hello","seven",["moon",["h","kelly"],"all"],123,456]

  1. __author__ = 'Administrator'
  2. li=["hello","seven",["moon",["h","kelly"],"all"],123,456]
  3. #a.请输出kelly
  4. print(li[2][1][1])
  5. #b.请使用索引找到”all”元素,并将其修改为“ALL”
  6. print(li[2][2].upper())

)

24.写代码,有下面元组.按要求实现功能

  1. __author__ = 'Administrator'
  2. tu=("alex","eric","rain")
  3. #a.计算元组长度并输出
  4. print(len(tu))
  5. #b.获取元组的第二个元素,并输出
  6. print(tu[1])
  7. #c.获取元组的第1-2个元素,并输出
  8. print(tu[:2])
  9. #d.请使用for循环输出元组的元素
  10. for i in tu:
  11. print(i)
  12. #e.请使用 for len range 输出元组的索引
  13. for i in range(len(tu)):
  14. print(i)
  15. #f使用enumberate输出元组的元素和序号。序号从10开始
  16. for i,j in enumerate(tu,10):
  17. print(i,j)

25 有如下元组,按要求实现以下功能

tu=("alex",[11,22,{"k1":"v1","k2":["age","name"],"k3":(11,22,33)},44])

a.讲述元组的特性:

答:1、有序的集合,可以存放多个值

2、通过偏移来取数据

3、属于不可变的对象,不能在修改内容

b.元组里的第一个元素alex可以不可以修改?

答:不可以修改

C.tu中的元素k2对应的值是什么类型,可不可以修改,如果能修改,则向其添加一个元素seven。

答:k2对应的值是list(列表).可以修改

  1. tu=("alex",[11,22,{"k1":"v1","k2":["age","name"],"k3":(11,22,33)},44])
  2. print(tu[1][2]["k2"])
  3. print(type(tu[1][2]["k2"]))
  4. tu[1][2]["k2"].append("seven")
  5. print(tu)

d.tu中的元素k3对应的值是什么类型,可不可以修改,如果能修改,则向其添加一个元素seven。

答:k3对应的值类型是元组,不可以修改

26字典

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

  1. __author__ = 'Administrator'
  2. dic={"k1":"v1","k2":"v2","k3":[11,22,33]}
  3. #a.请循环输出所有key
  4. for k in dic:
  5. print(k)
  6. #b.请循环输出所有value
  7. for v in dic.values():
  8. print(v)
  9. #c.请循环输出所有key,value
  10. for k,v in dic.items():
  11. print(k,v)
  12. #d.请在字典中添加一个键值对k4,v4,输出添加后的字典
  13. dic["k4"]="v4"
  14. print(dic)
  15. #e.请修改字典中k1对应的值为alex,输出修改过后的字典
  16. dic["k1"]="alex"
  17. print(dic)
  18. #f.请在k3对应的值中添加一个元素44,输出修改后的字典
  19. dic["k3"].append(44)
  20. print(dic)
  21. #g.请在k3对应的值的第一个位置插入18,输出修改后的字典
  22. dic["k3"].insert(0,18)
  23. print(dic)

 

27 转换

  1. #1.将字符串s=”alex”,转换成列表
  2.  
  3. s="alex"
  4. l=list(s)
  5. print(l)
  6.  
  7. #2.将字符串s=”alex”,转换成元组
  8.  
  9. s="alex"
  10. t=tuple(s)
  11. print(t)
  12.  
  13. #3.将列表li=[“selx”,”seven”]转换成元组
  14.  
  15. l=["alex","seven"]
  16. t=tuple(l)
  17. print(t)
  18.  
  19. #4.将元组tu=(“alex”,”seven”)转换成列表
  20.  
  21. t=("alex","seven")
  22. l=list(t)
  23. print(l)
  24.  
  25. #5..将列表li=[“selx”,”seven”]转换成字典且字典的key按照10开始向后递增
  26.  
  27. l=["alex","seven"]
  28. d={}
  29. for i,j in enumerate(l,start=10):
  30. d[i]=j
  31. print(d)

28.求1-100所有的和

  1. s=0
  2. for i in range(1,101):
  3. s+=i
  4. print(s)

29.元素分类

有如下集合[11,22,33,44,55,66,77,88,99],将大于66的放在集合的第一个key中,小于66的放在集合的第二个key中

  1. l=[11,22,33,44,55,66,77,88,99]
  2. d={"k1":[],"k2":[]}
  3. for i in l:
  4. if i>66:
  5. d["k1"].append(i)
  6. elif i<66:
  7. d["k2"].append(i)
  8. print(d)

30.购物车

功能要求:

要求用户输入总资产:如2000

显示商品列表;用户按序号选择商品,加入购物车

购买,如果商品总金额大于总资产.则提示余额不足,否则购买成功

  1.  
  1.  
  2. goods=[
    {"name":"电脑","price":1999},
    {"name":"鼠标","price":10},
    {"name":"游艇","price":20},
    {"name":"美女","price":998}
    ]
    good_d={}
    good_l=[]
    tag=True
    flag=True
    while tag:
    allmoney=input("请输入总资产:").strip()
    if allmoney.isdigit():
    for good in goods:
    print("{}.name:{name} price:{price}".format(goods.index(good)+1,name=good["name"],price=good["price"]))
    good_d[goods.index(good)+1]=[good["name"],good["price"]]
  3.  
  4. while tag:
    number=int(input("请输入要购买商品的序号:").strip())
    if not number or number not in good_d:
    print("输入错误。请重新输入:")
    continue
    else:
    flag=True
    while flag:
    count=input("请输入要购买商品的件数:").strip()
    if count.isdigit():
    allprice=good_d[number][1]*int(count)
    if allprice<=int(allmoney):
    good_l.append((good_d[number][0],good_d[number][1],count))
    allmoney=int(allmoney)- allprice
    print("你的余额为",allmoney)
    print(good_l)
    break
    else:
    print("你的余额不足,请重新选择商品")
    while True:
    cmd=input("请输入命令,输入Y表示继续购物,输入N表示退出结账")
    if cmd=="Y":
    flag=False
    break
    elif cmd=="N":
    flag=False
    tag=False
    break
  5.  
  6. else:
    print("输入命令有误")
    continue
  7.  
  8. else:
    print("输入有误。请重新输入:")
    continue
  9.  
  10. else:
    print("总金额必须是数字且不能为空!")
  1.  

Python 基础总结的更多相关文章

  1. python之最强王者(2)——python基础语法

    背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...

  2. Python开发【第二篇】:Python基础知识

    Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...

  3. Python小白的发展之路之Python基础(一)

    Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...

  4. Python之路3【第一篇】Python基础

    本节内容 Python简介 Python安装 第一个Python程序 编程语言的分类 Python简介 1.Python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum) ...

  5. 进击的Python【第三章】:Python基础(三)

    Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...

  6. 进击的Python【第二章】:Python基础(二)

    Python基础(二) 本章内容 数据类型 数据运算 列表与元组的基本操作 字典的基本操作 字符编码与转码 模块初探 练习:购物车程序 一.数据类型 Python有五个标准的数据类型: Numbers ...

  7. Python之路【第一篇】python基础

    一.python开发 1.开发: 1)高级语言:python .Java .PHP. C#  Go ruby  c++  ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...

  8. python基础之day1

    Python 简介 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python为我们提供了非常完善的基础代码库,覆盖了 ...

  9. python基础之文件读写

    python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...

  10. python基础之编码问题

    python基础之编码问题 本节内容 字符串编码问题由来 字符串编码解决方案 1.字符串编码问题由来 由于字符串编码是从ascii--->unicode--->utf-8(utf-16和u ...

随机推荐

  1. 「日常训练」「小专题·图论」 Cow Contest (1-3)

    题意 分析 问题是要看出来这是个floyd闭包问题.我没看出来- - 分析之后补充. 代码 // Origin: // Theme: Graph Theory (Basic) // Date: 080 ...

  2. python正则-字符串处理,主要用于处理请求参数格式为application/x-www-form-urlencoded的表单数据

    #当提交的表单数据格式为application/x-www-form-urlencoded,直接从浏览器复制出来的格式是str_lin(chrome,也是最常见的)或者str_in2(火狐)这两种格式 ...

  3. 深度学习anchor的理解

    摘抄与某乎 anchor 让网络学习到的是一种推断的能力.网络不会认为它拿到的这一小块 feature map 具有七十二变的能力,能同时从 9 种不同的 anchor 区域得到.拥有 anchor ...

  4. 以太坊solidity编程常见错误(不定期更新)

    1.报错: Expected token Semicolon got 'eth_compileSolidity' funtion setFunder(uint _u,uint _amount){ 解决 ...

  5. php处理三级分类数据

    <?php // 链接数据库 $link = mysqli_connect('localhost','root','root'); if($link == null){ exit; } mysq ...

  6. [C/C++] malloc内存分配与free内存释放原理

    1.问题的引入: 为什么要使用malloc,主要是因为在代码中,为了节约内存,很多数据都是动态生成的,所以会用malloc,对应于C++中的new,底层还是调用malloc. 2.碎片的问题: 会有内 ...

  7. bootstrap-table 增加序号列(支持分页)

    columns: [ { checkbox: true }, { title: '序号', align: 'center', halign: 'center', formatter: function ...

  8. [CF735D]Taxes

    题目大意:给你$n$,把它分成若干个数$n_i$,记价值为$\sum_{i=1}^k(\sum_{j|n_i}j-n_i)$(即分成的每个数的约数和(不包括自身)).(以前写的题,不知道为什么没交) ...

  9. WIndows 相关知识

    Windows服务 图解WinXP局域网共享设置步骤 Win10如何搭建FTP服务器以实现快速传输文件 强大工具psexec工具用法简介 BIOS和CMOS的区别 系统CLSID简介和小技巧

  10. 一些比较高效的CSS写法建议

    当浏览器解析html的时候,它构造了一个文档树来展现所有被显示的元素. 它在特定的样式表中去匹配元素,根据标准的css的层叠,继承和顺序规则, 在mozilla的实现中(可能其他的也是这样),对于每一 ...