引子

上一篇我们主要了解到了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. 标准io和管道练习

         标准IO和管道实验练习 [例1]把/etc/fstab文件内容重定向到/tmp目录下文件名为fstab.out 写法: 13:54:35 root@centos ~]#cat /etc/fs ...

  2. [apue] 使用文件记录锁无法实现父子进程交互执行同步

    父子进程间交互执行是指用一种同步原语,实现父进程和子进程在某一时刻只有一个进程执行,之后由另外一个进程执行,用一段代码举例如下: SYNC_INIT(); , counter=; pid_t pid ...

  3. python教程 - 猿说python

    一.简介         知识改变命运,程序改变世界.互联网时代潜移默化的改变着我们的生活,伴随技术的进步,我想下一个时代应该属于人工智能和机器学习,属于python.           pytho ...

  4. jenkins构建项目时报错缺少com.sun.image.codec.jpeg包解决方案

    错误日志:error: package com.sun.image.codec.jpeg does not exist 网上找的一个项目,使用的是jdk1.7,除此之外其他服务器配置或是环境配置都是j ...

  5. linux常用开发命令总结

    linux常用命令 文件操作命令 1. cd 目录名/目录名  切换目录 cd .. 切换到上一级目录  (change dictionary) Ctrl+C强制退出命令行,回到上一级 2.ls    ...

  6. Angular 表单嵌套、动态表单

    说明: 组件使用了ng-zorro (https://ng.ant.design/docs/introduce/zh) 第一类:嵌套表单 1. 静态表单嵌套 demo.component.html & ...

  7. wordpress发送邮件

    首先在wordpress内添加SMTP协议的插件,我这里用的是WP Mail SMTP 配置如下 配置完成之后测试一下,一定要测试能否发邮件

  8. 前端防止url输入地址直接访问页面

    首先,解决这个问题要搞明白此url是从程序内部跳转还是直接在地址栏输入的,如果是程序内部跳转,那就好办啦.方法如下: 判断用户是否登录状态,是否携带token 使用router.beforeEach注 ...

  9. 将jar包发布到maven的中央仓库细节整理

    在学习springboot框架的时候,会引入各种各样的starter依赖,照着教程尝试写了个demo-spring-boot-stater,可以理解为一个组件,随引随用 但是只能自己引用,无法共享,于 ...

  10. Windows快捷方式绑马

    0x01前言 windows的shell32在处理控制面板程序的快捷方式文件时,存在一个漏洞,可以加载硬盘上的任意DLL文件,即可执行任意代码. 之前看到一款俄罗斯黑阔写的的快捷方式下载木马并运行的生 ...