python注释-输入输出-基本数据类型-运算符

  • 2019 年 10 月 7 日
  • 笔记

python注释

用处:注释用来书写一些解释性信息,对代码的逻辑作用等作出描述

  单行注释、多行注释

 1 # 这是行注释,注释内容与# 之间要空一格   2   3 print("hello world!")  # 这是代码后的注释,与代码之间要空两格   4   5   6 '''   7 这是多行注释,用三个单引号引起来   8 '''   9  10 """  11 这是多行注释,用三个双引号引起来  12 """

与用户交互

输入

    在python中用 input() 来获取用的输入信息

      python 2.x 中,input 获取到的数据是什么类型,传给变量的就是什么类型

      而在python 3.x 中,input 获取到的数据在变量中都会被存储为字符串类型

      python 2.x 中的 raw_input() 相当于3.x 中的 input(),获取到的数据都存为字符串类型

# 获取用户输入  name = input()    # 指定提示信息让用户输入  name = input('Please input your name: ')

输出

    在python中用 print() 来输出信息给用户

 1 # 输出信息给用户   2 print("Wellcome!")   3 # Wellcome!   4   5 # -----------------格式化输出---------------------   6   7 # 获取用户输入的姓名与年龄并打印出来: My name is .... my age is ...   8   9 name = input('Please input your name: ')  10 age = input('Please input your age: ')  11  12 # 1----    , 分隔  13 print("My name is ", name, "my age is ", age)  14  15 # 2----    end = ''   取消换行多段拼接  16 print("My name is ", end = '')  17 print(name, end = '')  18 print(' my age is ', end = '')  19 print(age)  20  21 # 3----    %d %f / %s 占位符(个数与位置必须一致)  22 print("My name is %s my age is %s" %(name, age))  23  24 # 格式化输出  25 # 空格补齐    % 4d --->输出4位数,不足位数用空格补齐  26 print("**********************")  27 print("----% 4d----" %23)  28 print("----% 4d----" %123456)  29 # **********************  30 # ----  23----  31 # ---- 123456----  32  33 # 保留两位小数   % 10.2f ---> 输出 十位数,含两位小数,不足的位数用 空格补齐  34 print("**********************")  35 print("***% 10.2f***" %3.1415926)  36 # **********************  37 # ***      3.14***  38  39 # 巧用 t 制表符对齐 (也可以用 % 2d 来做)  40 i = 0  41 j = 0  42 for i in range(1,10,1):  43     for j in range(1,10,1):  44         if j <= i:  45             print("%d * %d = %d t" %(i, j, i * j), end = '')  46         else:  47             break  48         j += 1  49     print("")  50     i += 1  51  52 # 1 * 1 = 1  53 # 2 * 1 = 2     2 * 2 = 4  54 # 3 * 1 = 3     3 * 2 = 6     3 * 3 = 9  55 # 4 * 1 = 4     4 * 2 = 8     4 * 3 = 12     4 * 4 = 16  56 # ..............................
  tips:  %.2f 会四舍五入(a = 2.8365 print("%.2f" %a) --> 2.84 )
 1 # int   2 a = 15.269   3 a = int(a * 100)   4 a = a / 100   5 print("%.2f" %a)   6 # 15.26   7   8 # -0.005 (零点零..几看保留几位)   9 a = 15.269  10 a -= 0.005  11 print("%.2f" %a)  12 # 15.26
# Python3.6新增了一种f-字符串格式化  # 格式化的字符串文字前缀为’f’和接受的格式字符串相似str.format()。它们包含由花括号包围的替换区域。替换字段是表达式,在运行时进行评估,然后使用format()协议进行格式化。  # formatted string literals, 以 f 开头,包含的{}表达式在程序运行时会被表达式的值代替。  a = 10  c = '121212'  print(f'a = {a}')  # a = 10  print(f'c = {c}')  # c = 121212

python基本数据类型

  int:  整数型,用于存储诸如年龄、个数等数据,age = 18

    python 2.x 中还有一个长整型( long )的类型,但在python 3.x 中int 是一个可自动扩展的数据类型

  float: 浮点型,用于存储价钱、月薪等数据,salary = 160000.00

  str: 字符串型,用于存储描述性信息,如 jason = “jason今年18岁,瘦高瘦高的”

# 字符串类型定义的几种方式  a = 'halo'    b =  "thank you"    c = '''  thank you  '''    d = """  thank you very much !  """    # 字符串的相加运算  a = "hello "  b = "world"  print (a + b)  # hello world 字符串相加    # 字符串的相乘运算  a = "hands your hand up! "  print(a  * 3)  #hands your hand up! hands your hand up! hands your hand up!

  list: 列表类型,用于存储多个任意类型的数据,如 hobby = ['sing', ['jump', 'dance'], 'rap', 'basketball']

  dict: 字典类型,用于多组数据,存储数据有对应的描述,如 jason = {'name': "jason", 'age': 18}

    key通常是描述性信息,通常是字符串类型,是不可变类型

    value可以是任意类型

    字典存储的元素是无序的,与列表不同,故不能用索引值来取值

 1 # 取 sleep   ----> list 的索引是从0 开始的   2 stu = [   3     ['egon', 18, ['play',]],   4     ['alex', 18, ['play', 'sleep']]   5 ]   6 print(stu[1][2][1])   7 # sleep   8   9  10 # 取出公司地点  11 info={  12     'name':'egon',  13     'hobbies':['play','sleep'],  14     'company_info':{  15         'name':'Oldboy',  16         'type':'education',  17         'addr':'shanghai qingpu e',  18     }  19 }  20 print(info['company_info']['addr'])  21 # shanghai qingpu e

bool: 布尔类型,用来存储对错是非类的数据,如 lily_older_than_tom = True, 只有 True 与 False 两种值

    tips: 如果变量名存储的值是布尔值的话,那么约定俗成的变量名统一用 is_ 开头is_success、is_exist、is_delete、is_locked

complex复数类型,(不了解), a = 1 – 2j

运算符

算术运算符

+、-、*、/ 、%: 常见的加、减、乘、除、取余运算符

      python中 / 除法的精度不高,10 / 3 –> 3.3333335,但python有很多包可以解决这一问题

//、**: 整数除法(print(17 // 2)  —> 8)、次方(print(2 **3)  —> 8 , 2的3次方)

+=、-=、*=、/=…增量运算, (a = 1  a += 2  print(a)  –>  3)

1 print(10 / 3)  2 # 3.333333335  --> python的精度不高  3  4 print(11 % 3)  5 # 1
 1 # 普通赋值   2 a = 10   3   4 # 链式赋值   5 a = b = c = 1000   6 print(a, b, c)   7 # 1000 1000 1000    ---> input中 , 会默认补空格   8   9 # ------------解压赋值------------  10 arr = [1, 2, 3, 4]  11  12 # 普通方法  13 a = arr[0]  14 b = arr[1]  15 c = arr[2]  16 d = arr[3]  17 print(a, b, c, d)  18 # 1 2 3 4  19  20 # 解压赋值  21 a, b, c, d = arr  22 print(a, b, c, d)  23 # 1 2 3 4  24  25 # 解压赋值 _  26 a, _, _, d = arr  27 print(a, _, d)  28 # 1 3 4  29  30 # 解压赋值 *_   ---> 可以巧用这个 *_  31 a, *_, d = arr  32 print(a, _, d)  33 # 1 [2, 3] 4  34  35 # ------------交换值--------------  36 m = 10  37 n = 20  38  39 # 普通方法  40 o = m  41 m = n  42 n = 0  43 print(m, n)  44 # 20 10  45  46 # 交叉赋值  47 m = 10  48 n = 20  49 m,n = n,m  50 print(m, n)  51 # 20 10

  容器类型:能存储多个值得都可以叫做容器类型

逻辑运算符(返回值位bool类型)

>、<、==、!= : 大于、小于、等于、不等于

and、or、not : 且、或、非   优先级: not > and > or

 1 a = 'asdf'   2 b = 'zg'   3 print(a > b)   4 # False   python中的字符串比较是逐字母比较的, 'z' > 'a',所以字符串 b > a   5   6 a = 1   7 b = 1   8 print(a == b)   9 # True   == 比较的是变量所对应的值是否相等  10  11 c = 288  12 d = 288  13 print(c is d)  14 # False   is 比较的是两个变量的内存地址是否相等  15 # 两个变量的内存地址相等,那么他们的值一定相等