今日学习内容

用户交互

用户交互就是人向机器发出指令,机器分析处理后,给人们返回操作结果(装13的说法)。直白地讲,就是人往计算机中输入(input)数据,计算机输出(output)结果。交互的本质就是输入、输出。

  • input() 输入

    • 在python 3.* 的版本中,input() 接收到输入的任何信息,都会以字符串的形式存储

      name = input("请输入您的用户名:")
      print(name)
      print(type(name)) age = input("请输入您的年龄:")
      print(age)
      print(type(age))

    • 在python 2.* 的版本中,input() 接收输入的信息时,必须声明数据类型,系统会以对应的数据类型存储数据。如果没有声明数据类型,系统会出现异常

      '''
      python 2.* 中,input()在输入值时,需要声明数据类型,否则就会异常
      '''
      name = input("请输入您的用户名:")
      print(name)
      print(type(name)) age = input("请输入您的年龄:")
      print(age)
      print(type(age))

      异常情况:

    • 正常情况:

    • python 2.* 版本中的 raw_input() 的使用和功能与python 3.* 中的input() 一样

      '''
      python 2.* 中,raw_input()输入的值,无须声明数据类型,可以直接接收任何信息
      '''
      name = raw_input("请输入您的用户名:")
      print(name)
      print(type(name)) age = raw_input("请输入您的年龄:")
      print(age)
      print(type(age))

  • print() 输出

    • 将结果从控制台中输出,print()

      print("hello world")
    • 格式化输出

      1. %s :占位符,可接收任意类型的变量

      name = input("请输入您的用户名:")
      age = input("请输入您的年龄:")
      print("my name is %s,my age is %s"%(name,age))

      1. %d:数字占位符,只能接收数字

        name = input("请输入您的用户名:")
        age = input("请输入您的年龄:")
        age = eval(age)
        print("my name is %s,my age is %d"%(name,age))

        异常情况:将str类型的变量也用%d接收,提示异常

        正常情况:

      2. %f:数字占位符,输出浮点数,可用于设置显示数字的精确位数

        height = input("请输入您的身高:")
        height = float(height)
        print("my height is %0.2f m"%(height))

      3. format:

        • 按顺序传值

        name = input("请输入您的用户名:")
        age = input("请输入您的年龄:")
        print("my name is {},my age is {}".format(name,age))

        • 指定位置传值

        name = input("请输入您的用户名:")
        age = input("请输入您的年龄:")
        print("my name is {name},my age is {age}".format(name=name,age=age))

      4. f-string:指定位置传值,该功能只用于python 3.6 以上的版本

        name = input("请输入您的用户名:")
        age = input("请输入您的年龄:")
        print(f"my name is {name},my age is {age}")

  • 基本数据类型

    • 数字类型

      1. 整型-int:可以处理任意大小的整数,在程序中的表示和数学的写法一样。可用于定义年龄、手机号码等

      2. 浮点型-float:浮点数由整数部分和小数部分组成。浮点数运算可能会有四舍五入的误差。可用于定义体重、身高、薪资等

      3. 复数-complex:复数由实数部分和虚数部分组成。可以用 a + bj 或 complex(a,b) 表示。复数的实部a 和虚部b 都是浮点型

        var = 1 - 2j
        var1 = complex(1,2)
        print(var1)
        print(var.real) # 复数的实部
        print(type(var.real))
        print(var.imag) # 复数的虚部
        print(type(var.imag))
      4. int() 只能转换整数,例如 '1.0' 不能直接转换成int类型的记录,需要从str → float → int

    • 字符串类型:用于存储描述性的信息,比如说爱好,个人简介

      1. 本质

        在python 3.* 中,str(字符串)本质是拥有8个bit位的序列

        在python 2.* 中,str(字符串)本质是unicode序列

      2. 单双引号的使用没有区别,但不能混用。字符串中存在引号,嵌套使用

        var = "my name is 'xiao',my age is '18'"
        print(var)
      3. 字符串拼接原理:开辟新的空间,将拼接后的值放置进去

    • 列表 List:用于存放一个或多个不同类型的值

      • 在编程中,数值索引是从0开始

        l1 = ['dawn',18,['read','study']]
        name = l1[0]
        age = l1[1]
        hobby = l1[2]
        print(name)
        print(age)
        print(hobby)
    • 字典 dict

      通过大括号{}存储数据,以{key1:value1,key2:value2,…keyN:valueN}映射关系存储,每个键值对用逗号(,)进行分隔

      d1 = {"name":"dawn","age":18,"hobby":['read','study']}
      name = d1["name"]
      age = d1["age"]
      hobby = d1["hobby"][1] print(name)
      print(age)
      print(hobby)

    • 布尔类型 bool:用于判断事物的对错,一般不会单独定义bool变量,大多情况下,结合逻辑判断使用

      1. True / False

      2. == 和 is 的区别

        == 比较的是value(值),is 比较的是id(内存地址)

      3. 注意

        value(值)相等的情况下,id(内存地址)不一定相等;

        id(内存地址)相等的情况下,value(值)一定相等。

  • 运算符

    • 算术运算符

      运算符 说明 示例 结果
      + a = 11.35,b = 10,a + b 21.35
      - a = 4.56,b = 2.33,a - b 2.23
      * a = 0.25,b = 4,a * b 1.0
      / a = 9,b = 2,a / b 4.5
      // 整除,返回商的整数部分 a = 9,b = 2,a // b 4
      % 取余,返回除法的余数 a = 9,b = 2,a % b 1
      ** 幂,x**y,即返回x的y次幂 a = 9,b = 2,a ** b 81
    • 比较运算符

      运算符 描述
      == 判断两个操作数的值是否相等
      != 判断两个操作数的值是否不相等
      > 判断左操作数的值是否大于右操作数
      >= 判断左操作数的值是否大于或等于右操作数
      < 判断左操作数的值是否小于右操作数
      <= 判断左操作数的值是否小于等于右操作数
    • 赋值运算符

      1. 增量赋值

        运算符 描述 示例
        = 将右边的结果赋值给左边的变量 a = 1
        += 加法赋值运算 a += 1 # 等同于 a = a + 1
        -= 减法赋值运算 a -= 1 # 等同于 a = a - 1
        *=,/=,//=,%=,**= 跟加法/减法赋值运算类似  
      2. 链式赋值:将同一个值赋值给多个变量。

        '''
        x = 1
        y = 1
        z = 1
        python 用一行代码搞定
        '''
        x = y = z = 1
      3. 交叉赋值:定义变量a 和变量b, 将变量a 的值跟变量b 的值交换(任何类型都可以交换

        '''
        a = 'str'
        b = 1.023
        c = ''
        c = a
        a = b
        b = c
        '''
        a = 'str'
        b = 1.023
        a,b = b,a
      4. 解压赋值:将列表中的多个值依次赋值给多个变量

        '''
        l1 = ['str',2,['dawn'],{age:18}]
        a = l1[0]
        b = l1[1]
        c = l1[2]
        '''
        a,b,c,*_ = l1
    • 逻辑运算符

      运算符 描述
      and 逻辑与,用于连接两个条件表达式,如果有一个表达式不符合条件,整个表达式返回False
      or 逻辑或,用于连接两个条件表达式,如果有一个表达式符合条件,整个表达式返回True
      not 取反
      1. 多个and一起使用时,遇到False 返回 False,否则返回最后一个True

      2. 多个or一起使用时,遇到True返回True,返回第一个True

      3. and和or混合使用时,在没有括号的情况下,优先判断and

      4. 所有非零的自然数,返回值都为True,0的返回值为False

Python基础知识-运算符的更多相关文章

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

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

  2. python 基础知识(一)

    python 基础知识(一) 一.python发展介绍 Python的创始人为Guido van Rossum.1989年圣诞节期间,在阿姆斯特丹,Guido为了打发圣诞节的无趣,决心开发一个新的脚本 ...

  3. Python 基础知识(一)

    1.Python简介 1.1.Python介绍 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时 ...

  4. 开发技术--浅谈python基础知识

    开发|浅谈python基础知识 最近复习一些基础内容,故将Python的基础进行了总结.注意:这篇文章只列出来我觉得重点,并且需要记忆的知识. 前言 目前所有的文章思想格式都是:知识+情感. 知识:对 ...

  5. python基础知识(一)

    Python基础知识 计算基础知识 1.cpu 人类的大脑 运算和处理问题 2.内存 临时存储数据 断电就消失了 3.硬盘 永久存储数据 4.操作系统 调度硬件设备之间数据交互 python的应用和历 ...

  6. python基础知识(二)

    python基础知识(二) 字符串格式化 ​ 格式: % 类型 ---- > ' %类型 ' %(数据) %s 字符串 ​ print(' %s is boy'%('tom')) ----> ...

  7. python基础知识(二)

    以下内容,作为python基础知识的补充,主要涉及基础数据类型的创建及特性,以及新数据类型Bytes类型的引入介绍

  8. python基础知识讲解——@classmethod和@staticmethod的作用

    python基础知识讲解——@classmethod和@staticmethod的作用 在类的成员函数中,可以添加@classmethod和@staticmethod修饰符,这两者有一定的差异,简单来 ...

  9. python爬虫主要就是五个模块:爬虫启动入口模块,URL管理器存放已经爬虫的URL和待爬虫URL列表,html下载器,html解析器,html输出器 同时可以掌握到urllib2的使用、bs4(BeautifulSoup)页面解析器、re正则表达式、urlparse、python基础知识回顾(set集合操作)等相关内容。

    本次python爬虫百步百科,里面详细分析了爬虫的步骤,对每一步代码都有详细的注释说明,可通过本案例掌握python爬虫的特点: 1.爬虫调度入口(crawler_main.py) # coding: ...

随机推荐

  1. gitbook 入门教程之从零到壹发布自己的插件

    什么是插件 Gitbook 插件是扩展 Gitbook 功能的最佳方式,如果 Gitbook 没有想要的功能或者说网络上也没有现成的解决方案时,那么只剩下自食其力这条道路,让我们一起来自力更生开发插件 ...

  2. windows下安装和设置gradle

    一.安装前检查 检查jdk是否已经安装 二.下载gradle 1. https://gradle.org/releases/ 2.设置gradle环境变量 3. 环境变量中增加名为GRADLE_HOM ...

  3. 对接第三方服务引起的小思考-回调和Sign算法

    背景 ​ 最近在对接一个同事写的支付公用模块,然后对第三方服务引起一两个小思考. 思考 回调 来看看我们同事是如何做回调的. 首先,请求支付接口的时候,将回调URL作为请求body的一个参数[不加密] ...

  4. redhat 7系统服务工具-systemctl

  5. 20191012——POI设置单元格自动行高(思路)

    在经过Jxls或者POI导出数据至excel中后,发现有的单元格内容太多,既没有自动换行,也没有自动增大行高.那如何通过Java代码来实现呢?请看下面步骤: (一)首先,将excel设置为最合适的行高 ...

  6. 电信资源管理系统:基于 H5 叠加 OpenLayers3 GIS

    前言 通过结合 HTML5 和 OpenLayers 可以组合成非常棒的一个电信地图网络拓扑图的应用,形成的效果可以用来作为电信资源管理系统,美食定位分享软件,片区找房,绘制铁轨线路等等,各个领域都能 ...

  7. Spring Boot WebFlux 快速入门实践

    02:WebFlux 快速入门实践 Spring Boot 2.0 spring.io 官网有句醒目的话是: BUILD ANYTHING WITH SPRING BOOT Spring Boot ( ...

  8. 新手学分布式-动态修改Nginx配置的一些想法

    本人是分布式的新手,在实际工作中遇到了需要动态修改nginx的需求,因此写下实现过程中的想法.Nginx功能强大且灵活,所以这些权当抛砖引玉,希望可以得到大家的讨论和指点.(具体代码在 https:/ ...

  9. Java11月9日的动手动脑

    Java动手动脑 请自行编写代码测试以下特性(动手动脑): 在子类中,若要调用父类中被覆盖的方法,可以使用super关键字. 程序源代码: package yanzhengjicheng; class ...

  10. 浅谈json web token及应用

    Json Web Token (JWT),是一个非常轻巧的规范,这个规范允许在网络应用环境间客户端和服务器间较安全的传递信息.该token被设计为紧凑且安全的,特别适用于分布式站点的单点登录(SSO) ...