用户交互

在实际应用中,我们经常需要用户输入相应信息,根据用户输入信息进行反馈,此时我们需要input/output信息

python中提供了便捷的输入方法input()和print()

在python3中

name = input("请输入")print(name)print(type(name))

>>>

请输入123
   123
    <class 'str'>

Process finished with exit code 0

>>>

意味着在python3中用户输入的内容都以字符串的形式保存下来了

python2中:

C:\Users\DELL>python2

Python 2.7.14 (v2.7.14:84471935ed, Sep 16 2017, 20:19:30) [MSC v.1500 32 bit (Intel)] on win32
   Type "help", "copyright", "credits" or "license" for more information.
    >>> name = input("请输入")
   请输入123
    >>> print(name)
    123
     >>>
     >>> print(type(name))
     <type 'int'>
     >>>

>>> age = raw_input("请输入")
     请输入123
     >>> print(type(age))
     <type 'str'>
     >>>

    输入123时是以int类型保存下来的

    总结:在python3和python2中,input()方法的区别是py3将用户输入的内容全部以字符串的形式保存下来,而在py2是将用户输入的内容以原格式保存下来,而在python2中,raw_input()的用法和python3中的input()用法一样

格式化输出

name = input("name = ")age = input("age = ")hobby = input("hobby = ")print("name is %s\nage is %s\nhobby is %s"%(name, age,hobby))

>>>输出结果>>>

C:\Users\DELL\AppData\Local\Programs\Python\Python37\python3.exe C:/Users/DELL/PycharmProjects/untitled1/day02/day03总结.py
name = 李静
age = 16
hobby = Swimming
name is 李静
age is 16
hobby is Swimming

>>>

>>>

python中%s为字符串占位符,实际上%s可以为任何数据类型占位,输出时双引号后面用%变量名来格式化输出

数据类型

1、数字类型:①整数型:age = 18

>>>type(age)

>>>(class 'int')

②浮点型:height = 176.5

>>>type(height)

>>>(class 'float')

2、字符串类型:变量值用单引号双引号或者三引号引起来都可以

>>> name = "heillo"
     >>> type(name)
     <class 'str'>
     >>>

3、列表类型:可以表示一系列元素,用中括号括起来,元素间用逗号分隔

>>>val = ["Alex",18,[12,33,"egon"],20]

>>>type(val)

<class ‘list’>

>>>

列表中的元素可以是各种类型,自然也可以是列表和字典

4、字典类型:可以表示一对一对的元素,元素用花括号括起来:{“键”:值,“键”:值},元素被称为键值对

>>>val = {"name":"Alex","age":18}

>>>type(val)

<class 'dict'>

>>>

5、布尔类型:bool,用作判断条件用。布尔类型只有两种状态,True和False,所有数据类型都对应布尔值,其中 0,none,空字符串、空列表、空字典等为空的数据是False,其余都是True

>>> type(10>3)

     <class 'bool'>
     >>>

例:if 10>3:

             print("you are right")

>>>

you are right

>>>

运算符

1、数字运算符:+,-,*,/,**,%,//

>>> print(10 + 2)
12
>>> print(10 - 2)
8
>>> print(10 * 2)
20
>>> print(10 / 2)
5.0
>>>
>>> print(10 ** 2)
100
>>> print(10 % 2)
0
>>> print(10 // 2)
5
>>>

2、比较运算符

>>> print(10 != 10)
False
>>> print(10>10)
False
>>> print(10>=10)
True
>>> print(10<=10)
True
>>> print(10<10)
False
>>> print(10 == 10)
True
>>> print(10 > "a")    #数字类型不能与字符串类型比较
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: '>' not supported between instances of 'int' and 'str'

>>> print("abcd" > "abce")

False

总结  #字符串类型的比较根据字符串字符从左到右开始比较,如果第一个字符谁对应的ASCII码值大则那个字符串大,第一个字符相同则判断第二个字符,以此类推

>>> print(["123",12]>["abc",12])

False

总结:#列表类型的比较是从第一个元素开始比较,第一个元素谁大则哪个列表大,如果第一个元素相等则比较第二个元素,以此类推,注意,如果比较的元素不是同一类型则报错,如下:

>>> print(["123",12]>[123,12])   #
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: '>' not supported between instances of 'str' and 'int'
>>>

3、赋值运算符:“=”,age = 19

交叉赋值:

>>> x = 10

>>> y = 20
>>> x,y = y,x
>>> print(x,y)
20 10
>>>

等同于:

>>> x = 10
>>> y = 20
>>> z = x
>>> x = y
>>> y = z
>>> print(x,y)
20 10
>>>

增量赋值:

a = a + 1   <==> a += 1

a = a - 1  <==> a -= 1

a = a * 2 <==> a *= 2

a = a / 2 <==> a /= 2

a = a%2  <==> a %= 2

a = a // 2 <==> a //= 2

a = a ** 3 <==> a **= 3

解压赋值:将列表中的每个元素分别赋值给变量

>>> L1 = [1,2,3,4]
>>> a,b,c,d = L1  
>>> print(a,b,c,d)
1 2 3 4
>>>

接收元素变量必须与元素个数一致,否则报错,如下:

>>> val = [1,2,3,4,5]
>>> a,b,c = val
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ValueError: too many values to unpack (expected 3)
>>>

当列表元素比较多,这时候只想取前两个值和后两个值怎么办呢,看下面代码

>>> L2 = [1,2,3,4,5,6,7,8]
>>> a,b,*_,c,d = L2    #   *_表示将中间不想取的值赋值给"_",此时“_”是个列表
>>> print(a,b,*_,c,d)     #打印*_时即将列表“_”中的元素打印出来
1 2 3 4 5 6 7 8
>>> print(a,b,_,c,d)
1 2 [3, 4, 5, 6] 7 8
>>> print(a,b,c,d)
1 2 7 8
>>>

总结:*_这种方式可以帮我们解决解压赋值必须所有元素都取的困扰,_作为变量来使用,也可以用其他字符替代。但这种方式只在python3中有效

4、逻辑运算符: and 、 or 、not,判断条件使用

and :逻辑与,判断左右两个条件,当两个条件任意一个为假时,整体结果为假

>>> print(10 > 2 and "a" > "b")
False
>>>

or:逻辑或,判断左右两个条件,当两个条件任意一个为真时,整体结果为真

>>> print(10 > 2 or "a" > "b")
True
>>>

not:逻辑取反,取条件真假相反的结果

>>> print("a" > "b")
False

>>> print(not "a" > "b")

True
>>>

6、身份运算:is   比较内存地址是否相同   而“”==“”是比较值

>>> x = 10
>>> y = 10
>>> print(x is y)
True
>>> id(x)
140714018137200
>>> id(y)
140714018137200
>>>

注意:变量值相等,内存地址不一定相同,内存地址相同,值一定相等

转载于:https://www.cnblogs.com/dongxixi/p/10567420.html

python用户交互、基本数据类型、运算符相关推荐

  1. python交互数据_Python用户交互以及数据类型

    一.用户交互与格式化输出 1.用户交互 1.1什么是用户交互 程序等待用户输入的数据,程序执行完毕后为用户反馈信息. 1.2为何程序要与用户交互 为了让计算机像人类一样与用户交互 1.3使用方式 在p ...

  2. 【PySimpleGUI】Python用户交互图形界面开发(3)

    目录 前言 一.通过列表索引获取窗口返回值 二.通过字典的键获取返回值 前言 上一篇文章介绍了窗口关闭,按钮点击以及其他元素事件.[PySimpleGUI]Python用户交互图形界面开发(2) 这篇 ...

  3. 第4天:python的数据类型、用户交互以及基本运算符

    2021年12月17日 文章目录 *知识点回顾 1.注释 2.变量 3.定义一个变量发生的本质 4.使用一个变量 5.常量 一.基本数据类 (一)数字类型 1. int 整型 (整数) 2. floa ...

  4. python 数据交互_Python用户交互以及数据类型

    一.用户交互与格式化输出 1.用户交互 1.1什么是用户交互 程序等待用户输入的数据,程序执行完毕后为用户反馈信息. 1.2为何程序要与用户交互 为了让计算机像人类一样与用户交互 1.3使用方式 在p ...

  5. Python用户交互

    input()函数接受一个标准输入数据,返回为 string 类型. a = input("Input your name: ") print(a) 运行结果 Input your ...

  6. 【PySimpleGUI】Python用户交互图形界面开发(1)

    目录 前言 一.PySimpleGUI 二.使用 1.安装 2.交互式窗口 3.示例生成窗口 总结 前言 介绍在Python编程语言下,如何使用PySimpleGUI开发具有图形界面的应用程序,让你的 ...

  7. Python基础语法和数据类型最全总结

    本文分享自华为云社区<Python最全基础语法和数据类型总结>,原文作者:北山啦 . 人生苦短,我用Python.总结了Python最全基础语法和数据类型总结,一文带你学会Python. ...

  8. Python基础——变量、常量、数字类型、四 列表list、五 字典dict、六 布尔bool、垃圾回收机制、用户交互、运算符、流程控制

    文章目录 变量 一 引入 一.什么是变量? 二.为什么要有变量? 三.怎么使用变量(先定义.后使用) 3.1.变量的定义与使用 3.2.变量名的命名规范 3.3.变量名的命名风格 3.4.变量值的三大 ...

  9. Oldboy_day01 Python的历史,变量\常量\数据类型\用户交互\流程控制\循环while

    ###学前动员###:老男孩IT培训的师资力量 讲师:邱彦涛: 项目经理:春生: 班主任:任安安; 银角大王:武sir: 金角大王:Alex: 肖锋:Python web 框架: 马老师:数据库+框架 ...

最新文章

  1. ps grep java_ps -ef | grep java 查看所有关于java的进程
  2. SonarQube6.2源码解析(四)
  3. python中range函数是什么意思_python里range是什么
  4. 北妈每日一题:如何甩锅给后端!
  5. 前向传播算法和反向传播算法
  6. CSS的七种基本选择器及其权值
  7. 湖北职业技术学院计算机协会,湖北职业技术学院2019年教师教学能力大赛顺利举行...
  8. ie6中margin失效问题
  9. linux Flatpak 安装包,snap卸载
  10. Oracle 树状 父子结点 查询方法 倒叙查询
  11. 新版quartus_prime破解与altera官网下载器件库
  12. 电脑蓝牙音箱,有效解决笔记本电脑连接不了蓝牙音箱的办法
  13. erdas空间建模_ERDAS空间建模工具介绍
  14. 基于单目视觉的平面目标定位和坐标测量 (上) - 坐标系和成像模型
  15. 离线 维基百科 android,iPhone上的离线维基百科(附安装方法)
  16. unity免费资源获取
  17. 无法打开匿名级安全令牌——CV明
  18. 微信iOS 8.0.8正式版重磅更新啦,这些新功能超好用!!
  19. Git 换行符自动转换
  20. css 手风琴_如何创建基于CSS的内容手风琴

热门文章

  1. torque安装笔记
  2. python中的库及module的 路径
  3. 31岁负债59万(房贷27万,私人借款32万),该怎么办?
  4. 夫妻一方信用卡逾期,另外一方会受到牵连吗?
  5. AD提高动态的方法(附SNR计算)
  6. 安卓设置Activity切换动画无效的问题
  7. mysql unix_timestamp 格式化_FROM_UNIXTIME 格式化MYSQL时间戳函数_MySQL
  8. gson json转map_Java几种常用JSON库性能比较
  9. leetcode跳跃游戏C语言,LeetCode:跳跃游戏
  10. 徐波 博士 计算机,徐波教授:医工联合促进智能肿瘤学发展——探秘肿瘤精准治疗中的AI技术...