这学期的课程有需要学到 python,国庆利用几天时间刷了一下题,在刷的过程中遇到许多问题,都是一些零零碎碎的知识点,记录一下。

  1. 如何在控制台接收一个输入数据

    1
    2
    3
    x = input()
    x = int(input()) // 输入的数必须为整数,同理还有 str(),float()
    x,y = map(int,input().split()) // 同时输入两个整数,用空格隔开
  2. 如何计算长度? 用 len() 函数,例如

    1
    2
    a = ['string',5,1,'hello']
    print(len(a)) // 4
  3. 三角函数,引入 math 模块

    1
    2
    import math
    C = math.acos((a**2 + b**2 - c**2)/(2*a*b))*180/math.pi // 利用 acos 函数求三角形一边的对角
  4. 字符串打印输出格式

    1
    print('%.2f'%a)  // 输出的 a 保留两位小数
  5. for 循环书写格式

    1
    2
    3
    arr = [1,2,3,4,5,6,7]
    for i in arr
    print(i,end="") // 1234567, end="" 表示不换行
  6. range 函数

    1
    2
    3
    4
    # 创建一个整数列表,一般用在 for 循环中
    # 在 python 中,用 ‘#’ 注释
    range(0,5) # 0,1,2,3,4
    range(0,10,2) # 0,2,4,6,8 间隔为 2
  7. 打印一个右对齐直角三角形

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    /*
    *
    ***
    *****
    */
    for i in range(0,5,2):
    for j in range(0,4-i):
    print(" ",end="")
    for k in range(0,1+i):
    print("*",end="")
    print("")
  8. 查找某个数,find() 和 index()

    1
    2
    str.index('a') # 查找字符串 str 是否存在 a,查到返回位置,否则抛出异常
    str.find('a') # 与 index 一样,不过查不到返回的是 -1
  9. 判断字母是大写,用 isupper();判断是否小写,用 islower()

  10. 求绝对值、自然对数以及平方根

    1
    2
    3
    4
    import math
    abs(x) # 求 x 的绝对值
    math.sqrt(x) # 对 x 进行开平方根
    math.log(4,2) # 以 2 为底 4 的对数,第二个参数为空则默认以 e 为底,返回的是浮点数
  11. 转义字符 \

    1
    2
    print("Please write letter 'A'.")   # Please write letter 'A'.
    print("The path is \"D:\study\computer\\\".") # The path is "D:\study\computer\".
  12. strip() 去字符串空格,用 isalpha() 判断是否由字母组成,用 isdigit() 判断字符串是否都是数字

  13. 列表(相当于其它语言的数组)

    1
    2
    3
    4
    5
    6
    arr = [5,8,7,2,4]   # 定义列表 arr
    list() # 将一组数转换为列表
    del l[2] # 删除列表中第三个数
    ' '.join(列表名称) # 去除列表的 [] ,转为空格隔开的字符串
    append() # 在列表后添加元素
    arr = [x for x in arr if x != 2] # 把列表值等于 2 的删除
  14. 如果一个列表包含数字,不能直接转换为字符串,需要用 '%s' 格式转为字符串

  15. 列表的排序函数 sort() 和 sorted()

    1
    2
    3
    4
    5
    arr = [5,1,3,8,7,6]
    sorted(arr)
    arr.sort()
    print(arr)
    # [1, 3, 5, 6, 7, 8],区别:sort 是在原位排序列表,而 sorted 是产生一个新列表
  16. 算术运算符

    1
    2
    3
    4
    + - * /  // 分别代表加、减、乘、除
    % 取模 // 例如 361 % 10 结果为 1
    // 整除,向下取整 例如 9 // 2 结果为 4, 302 // 100 为 3
    ** n 次方 // 例如 a ** 2 表示 a 的平方