引子

上一篇我们主要了解到了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. 小型APP系统开发与应用项目实训

    实训项目 :             小型APP系统开发与应用项目实训                           项目成品名称:          果乐多商城               项 ...

  2. 前沿科技-混合现实(MR)远程协作辅助工具:微缩虚拟形象Mini-Me

    今天分享一篇在刚刚结束的CHI’2018上发表的full paper.该文章由来自澳洲University of South Australia的Piumsomboon等人和来自新西兰Universi ...

  3. 死磕 java线程系列之自己动手写一个线程池

    欢迎关注我的公众号"彤哥读源码",查看更多源码系列文章, 与彤哥一起畅游源码的海洋. (手机横屏看源码更方便) 问题 (1)自己动手写一个线程池需要考虑哪些因素? (2)自己动手写 ...

  4. python 3.7 使用MP3play 模块

    因工作需要,做了一个QQ机器人语音播报程序.主要思路 是通过 酷Q 获取QQ消息取出有效信息. 根据信息在百度AI上合成语音,然后本地播放. 在播放语音的时候用了好几个模块  pygame .pyme ...

  5. 给老师安排课表JAVA项目及登录窗口的实现

    实现一个安排课表的Java实验. 有以下几点要求: ①用所给的教师姓名进行课表安排 ②用所给的地点进行课表安排 ③不得有重复的课程名称出现 ④将信息写入到文件里 ⑤用窗口来进行实现 package c ...

  6. 最简单的JS实现json转csv

    工作久了,总会遇到各种各样的数据处理工作,比如同步数据,初始化一些数据,目前比较流行的交互数据格式就是JSON,可是服务器中得到的JSON数据如果提供给业务人员看的话可能会非常不方便,这时候,转成CS ...

  7. jdbc 以及 事务的java类编写

    package com.gaosheng.utils; import java.sql.Connection;import java.sql.SQLException; import javax.sq ...

  8. mongodb完整安装

    在线下载安装依赖包 yum -y install gcc gcc-c++ yum -y install gcc gcc-c++ ncurses ncurses-devel cmake bison yu ...

  9. 【源码解析】凭什么?spring boot 一个 jar 就能开发 web 项目

    问题 为什么开发web项目,spring-boot-starter-web 一个jar就搞定了?这个jar做了什么? 通过 spring-boot 工程可以看到所有开箱即用的的引导模块 spring- ...

  10. ride工具使用

    1.新建project,suite, testcase (1) 新建project:file->new project  ,输入工程名,选择Type选directory,选择工程存放路径,ok ...