引子

上一篇我们主要了解到了python这门编程语言,今天来说一下关于用户交互,数据类型和运算符方面的学习内容

用户交互

什么是用户交互?

用户交互就是人往计算机里输入数据(input),计算机输出结果(print)

很简单一个例子,我们在pycharm中输入以下代码

age = input("请输入年龄:")   #往计算机中输入数据
print(type(age)) #让计算机输出age的数据类型

这时,计算机就会接收用户输入,其实无论输入什么类型的数据,最终返回的一定是字符串(str)

PS:python2中input一定要声明你输入的类型,python2中的raw_input与python3中的input一样

格式化输出

把一段字符串里面的某些内容替换掉之后再输出,就是格式化输出。

如何格式化输出?

1、占位符,如:%s、%d:

# %s占位符:可以接收任意类型的值
# %d占位符:只能接收数字,如果不是数字就会报错
print('亲爱的%s你好!你报名的%s月课程已成功,学费是%d' % ('Tom', 10, 18000))

输出结果为:

2、format

废话不多说,直接举例说明:

# .fomat的用法
name = 'Tom'
age = ''
print("my name is {}, my age is {}".format(name, age))
#也可以用下列方法
print("my name is {name}, my age is {age}".format(name=name, age=age))

输出结果都是

3、f-string(这个只有是python3.6版本后才会有的)

# f-string的用法
name = 'Tom'
age = ''
print(f" my name is {name}, my age is {age}")

数据类型

1、整型  int (可定义:电话,身份证号 ‘X除外’ ,年龄)

PS:长整型long:只有python 2 中有长整型,long范围是-2147483647 到 2147483647,即为-2^31到2^31-1

age = 18  # age=int(18)

print(id(age))
print(type(age))
print(age)

140718798304048
<class 'int'>
18

2、浮点型  folt  (可定义体重,身高,薪资)

salary = 2.1  # salary=float(2.1)
print(id(salary))
print(type(salary))
print(salary)

2035028452208
<class 'float'>
2.1

3、字符串 str  (可定义爱好,个人简介)

name1 = 'Tom'
name2 = "Sam"
print(id(name1))
print(type(name1))
print(name1)

1398355144944
<class 'str'>
Tom

PS:这里提一下

  python 2 中的str本质其实是一个拥有8个bit位的序列

  python 3 中的str本质其实是一个unicode序列

  字符串引号使用没有区别(单引,双引,三引号都可以),但是不能混用

  如果字符串中需要有引号,就必须使用嵌套

  字符串拼接就是开辟了一个新空间,存入数据

4、列表  list  (存一个或多个不同类型的值)

  在[]内用逗号分隔开任意类型的值。

hobby = 'read'
hobby_list = [hobby, 'run', 'girl']
print(id(hobby_list))
print(type(hobby_list))
print(hobby_list)

2855587238472
<class 'list'>
['read', 'run', 'girl']

存不是目的,取才是目的,我们介绍列表索引取值的方法,牢记索引序号从0开始。

hobby_list = ['read', 'run', 'girl']
# 索引序号 0 1 2
# 取出第二个爱好
print(hobby_list[1])

run

hobby_list = ['read', 'run', ['girl_name', 18, 'shanghai']]
# 取出girl的年龄
print(hobby_list[2][1])

18

5、字典 dict

作用

用来存取多个值,按照key:value的方式存值,取的时候可以通过key而非索引去取值,key对value具有描述性的作用。存放数据的种类各种各样并且数据较多的时候可以使用字典。

用法

在{}内用逗号分隔开多个元素,每一个元素都是key: value的格式,其中value是任意格式的数据类型,key由于具有描述性的作用,所以key通常是字符串类型。

# 字典套列表
user_info = {'name': 'Tom', 'gender': 'male', 'age': 20,
'company_info': ['oldboy', 'shanghai', 50]}
print(user_info['name'])
print(user_info['company_info'][0])

Tom
oldboy

# 字典套字典
user_info = {'name': 'Tom', 'gender': 'male', 'age': 20, 'company_info': {
'c_name': 'oldboy', 'c_addr': 'shanghai', 'c_num_of_employee': 50}} print(user_info['name'])
print(user_info['company_info']['c_name'])

Tom
oldboy

6、布尔类型  bool

主要用于判断事物的对错,只有两个值:Ture和False ,一般布尔类型不会单独定义

# 布尔类型
a = 1
b = 1
print(a == b) # == 比较的是value
print(a is b) # is 比较的的是id

True
True

PS:值相等的情况下,id不一定相同

   id相同,之一定相同

运算符

算术运算符

# 算术运算符
print(1 + 2) # 加
print(1 - 2) # 减
print(1 * 2) # 乘
print(1 / 2) # 除
print(10 // 3) # 整除,只取整数
print(10 % 3) # 取模
print(10**3) # 次幂

输出结果:

3
-1
2
0.5
3
1
1000

比较运算符

# 比较运算符
a = 10
b = 20
print(a == b) # 判断相等
print(a != b) # 判断不等于
print(a > b) # 判断大于
print(a >= b) # 判断大于等于
print(a < b) # 判断小于
print(a <= b) # 判断小于等于

输出结果:

False
True
False
False
True
True

赋值运算符

age = 19
age = age + 1
print(age)

20

age = 19
age += 1  #加等于
print(age)

20

age = 19
age *= 10  #乘等于
print(age)

190

链式赋值

# 链式赋值
x = 1
y = 1
z = 1
x = y = z
print(x, y, z)

1 1 1

交叉赋值

# 交叉赋值
a = 1
b = 2
print(a, b)
a, b = b, a
print(a, b)

1 2
2 1

解压赋值

# 解压赋值
l1 = [1, 2, 3, 4]
l2 = [1, 2, 3, 4, 5, 6]
a, b, c, d = l1
print(a, b, c, d) # 这时如果打印l2会报错
# *_ 可以接受溢出的元素
a, b, c, d, *_ = l2
print(a, b, c, d, *_)
print(*_, a, b, c, d)

1 2 3 4
1 2 3 4 5 6
5 6 1 2 3 4

逻辑运算符

and:有一个返回False,整条式子都为False

or:有一个返回Ture,整条式子都为Ture

not:非真(取反)

# 逻辑运算符
print(10 < 20 and 20 > 30 and 30 < 40) # 有一个返回False,整条式子都为False
print(10 > 20 or 20 > 30 or 30 < 40) # 有一个返回Ture,整条式子都为Ture

False
True

Python语法入门02的更多相关文章

  1. python语法入门之流程控制

    python语法入门之流程控制 流程控制是指控制流程,具体指控制程序执行的流程. 流程控制分为三种: 1.顺序结构 程序从上而下的正常执行(正常执行的代码就是顺序结构) 2.分支结构 赋予程序人的思维 ...

  2. python爬虫入门02:教你通过 Fiddler 进行手机抓包

    哟~哟~哟~ hi起来 everybody 今天要说说怎么在我们的手机抓包 通过 python爬虫入门01:教你在Chrome浏览器轻松抓包 我们知道了 HTTP 的请求方式 以及在 Chrome 中 ...

  3. Python趣味入门02: 妥妥地安装配置Python(Windows版)

    < 上一篇:Python趣味入门01:你真的了解Python么? 本篇内容手把手教您如何去网上下载安装Python的运行环境,本文写于2020年Python稳定的版本是3.8,Windows流行 ...

  4. python语法入门

    程序=数据+功能        我们学习编程语言的目的是为了控制计算机能够像人一样去做事        所以说,编程语言中出现的所有的语法都是为了控制计算机能够像人一样去做xxx事  一.注释:  1 ...

  5. 03.python语法入门--注释、变量

    注释 """多行注释加在整个py文件的开头用来对该py文件进行一个整体性的说明通常一个py中只有一个多行注释"""​# 这是一行贼溜的代码p ...

  6. 07.python语法入门--流程控制

    分支结构 什么是分支结构 为什么要用分支结构 如何使用分支结构 if语法 if应用案例 循环结构 什么是循环结构 为什么要用循环结构 如何使用循环结构 while循环语法 while循环应用案例 fo ...

  7. 002 python语法入门

    一:基本数据类型知识点 1.基本数据类型 Number 数字 String 字符串 Bool 布尔 List 列表 Tuple 元组 Set 集合 Dictionary字典 2.分类 )标准的pyth ...

  8. python语法入门之变量

    目录 一.变量 1.1 什么是变量 1.2 怎么使用变量 1.3 变量名的命名规范 1.4 变量名的命名风格 1.5 变量的三大特征 2.常量 一.变量 1.1 什么是变量 # 变量就是可以变化的量, ...

  9. 05.python语法入门--垃圾回收机制

    # (1)垃圾回收机制GC# 引用计数# x = 10 # 值10引用计数为1# y = x   # 值10引用计数为2## y = 1000 # 值10引用计数减少为1# del x     # 值 ...

随机推荐

  1. JsonMessageView工具类

    前言 工具类 示例: 前端发送ajax请求 springmvc控制层接收请求并处理请求     前言: 在工作中使用springmvc web框架时常常会发送一个ajax请求,我们在控制层接收到请求并 ...

  2. Two progressions CodeForce 125D 思维题

    An arithmetic progression is such a non-empty sequence of numbers where the difference between any t ...

  3. mybatis 常用的jabcType与javaType对应

    一.jabcType与javaType对应   JDBC Type            Java Type CHAR                 String VARCHAR           ...

  4. 002-python函数、高级特性

    1.函数 1.1 定义函数 在Python中,定义一个函数要使用def语句,依次写出函数名.括号.括号中的参数和冒号:,然后,在缩进块中编写函数体,函数的返回值用return语句返回 自定义一个求绝对 ...

  5. 『TensorFlow2.0正式版』TF2.0+Keras速成教程·零:开篇简介与环境准备

    此篇教程参考自TensorFlow 2.0 + Keras Crash Course,在原文的基础上进行了适当的总结与改编,以适应于国内开发者的理解与使用,水平有限,如果写的不对的地方欢迎大家评论指出 ...

  6. js完整

    jQuery jQuery介绍 jQuery是一个轻量级的.兼容多浏览器的JavaScript库. jQuery使用户能够更方便地处理HTML Document.Events.实现动画效果.方便地进行 ...

  7. Mariadb 基于Mycat实现读写分离

    环境:Mariadb主:192.168.200.129 Mariadb从:192.168.200.114 Mycat    :192.168.200.112 (1)      安装jdk,先查看本机是 ...

  8. 网络游戏开发-客户端2(自定义websocket协议格式)

    Egret官方提供了一个Websocket的库,可以让我们方便的和服务器长连接交互. 标题写的时候自定义websocket的协议格式.解释一下,不是说我们去动websocket本身的东西,我们是在we ...

  9. e课表项目第二次冲刺周期第十天

    昨天完成了什么? 昨天还有一天第一次冲刺周期就结束了,我们的工作也接近尾声了,所以今天我利用之前的方法,完成了对监听的设置,以及对修改界面的编写,可以实现相应的删除和修改的功能,然后我和我们组的成员商 ...

  10. OFD电子文档阅读器功能说明(采用WPF开发,永久免费)

    特别说明 ofd阅读器开发语言为c#,具有完全自主产权,没有使用第三方ofd开发包.可以根据你的需求快速定制开发.本阅读器还在开发完善阶段,如有任何问题,可以联系我QQ:13712486.博客:htt ...