第二篇 python基础知识总结:数据、运算符

  引子

    我们跟任何人交流,说的每一句都是都一些文字组成,包含名词、动词、语句、标点符号等,组成我们说普通话构成的基本要素。同理我们学习python语言也要明白这些基本要素,也就是我们常说的基本语法,这是我们必须掌握的基础知识。下面我就根据我们常用的知识总结一下。对此内容不过多的讲解!我们需要的是多练!坚持练!反复练!着重强调!

    一 变量与常量

     任何一门计算机语言中,变量与常量都是首先要了解的最基础知识。变量就是变化的量,常量就是一个不变的量,一个常数。python语言中的变量不指定存储类型,这点与C语言有很大不同。我们可以把变量理解为一个存储东西的盒子、仓库、小房子等里面的东西可以变,同理常量就是一个固定的东西,里面的东西不可改变。python语言中没有特殊的语法规定常量的定义,我们一般定义常量时,多有的字母都大写!

  变量和常量都要名字,就如每个存储物体都有名字一样,1号盒子、2号盒子。。。,变量名的左右就是指向存储值。实质就是在内存中一片区域存储着另一片保存着数据的地址,我可以认为变量就是一个地址。诚然每个可以有不同的理解。只要理解变量这个意思就行。下面是在sublime text中的总结如下:

#变量命名方式:
#变量只能是字母、数字、下划线的组合,首字符不能为数字。
#关键字不能声明为变量{'and','as','assert','break','class','continue','def','del','elif','else','except','exec','finally','for','from','global','if','import','in','is','lambda','not','or','pass','print','raise','return','try','while','with','yield','input'}#变量的定义方式
#驼峰体
StudentAge = 20
#下划线
student_age = 20#查看一个变量的类型
type(student_age)
#查看一个变量的ID号,实质就是内存地址
id(student_age)
#查看一个变量的值value,
student_age  #交互环境中直接回车输出
print(student_age) #代码中可以直接打印输出#总结id相同,意味着type和value必定相同,实质是定义的两个变量指向同一个引用(内存地址)
#value相同type必定相同,但id不一定相同
#等号比较的是value
#is比较的是id

二  常见数据类型汇总

python常见的数据类型有整形、浮点型、布尔型、字符串、列表、元组、字典、集合,分别简介如下

 1 #数字
 2 #int整型 常用于标识:年龄、等级、身份证号、个数......
 3 age = 10 
 4 
 5 #float 浮点型 常用语标识:工资、身高、重量、价格...
 6 height = 15.3
 7 
 8 #布尔型 常用来标识:真假、非空、好坏....
 9 Tag = True/False
10 #注布尔值就两个值,(None,0,"",{},[])的布尔值为False,其余均为真
11 
12 #字符串
13 #python中加了'a',"a","""a""" 单引号 双引号  多引号的都是字符串,没有单个字符
14 #三种表示方法没有本质区别。
15 first_name = 'qi'
16 second_name = 'lv'
17 three_name = 'zhui'
18 last_name ='che'
19 full_name = first_name + second_name + three_name + last_name
20 print(full_name) #"qilvzhuiche"
21 #如上 字符串可以拼接 用'+'来实现,字符串拼接效率不高,本质上申请一个全新的内存空间存入字符串,相当于所有的字符串都复制了一次
22 #字符串可以进行“乘法”运算
23 '**'*10 #字符串‘**’被复制10次
24 *******************
25 
26 #列表 [] 可以用来存储多个任意的值,字符、数字...
27 students = ['qilv','ruoshui','langzi']
28 students = list(['qilv','ruoshui','langzi'])
29 students_info = [['qilv',30,'game'],['ruoshui',28,'play']]
30 
31 #元组()功能类似列表,可以存储任意类似数据,特点不能修改
32 addrs = ('shandong','shanghai','nanjing','hangzhou')
33 
34 #字典{键:值} 主要存储一些详细信息,便于快速获取
35 students_info = {'name':'qilv','age':30,'hobby':'game'}
36 # 字典的键必须唯一,不得重复
37 
38 #集合{}  存储不重复的各种数据
39 idNums = {101,102,103,104}
40 #集合提点无序不重复

三 数据交互

#用户输入input
#python3中输入任何数据都转换成字符串,实际根据需要转换
name = input("请输入你的名字:")
age = int(input("请输入你的年龄:"))
#打印输出print
print("Hello word!")
#格式化输出 my name is xxx,age is xx
print("my name is %s,age is %d"%(name,age))

下面练习一个小例子,通过用户输入一些信息,一起打印出来

 1 练习:用户输入姓名、年龄、性别、工作,然后打印成以下格式
 2 ------------ info of name -----------
 3 Name  : qilvzhuiche
 4 Age   : 30
 5 Sex   : male
 6 Job   : student 
 7 ------------- end -----------------
 8 """
 9 #输入信息
10 """
11     输入内容:姓名,年龄,性别,爱好
12     分别定义四个变量用来保存输入值
13     使用输入获取函数input()
14 """
15 name = input("请输入你的名字:")
16 age = input("请输入你的年龄:")
17 sex = input("请输入你的性别:")
18 job = input("请输入你的工作:")
19 
20 #打印信息
21 """
22     调用打印函数print,按照格式打印
23     分别打印四个输入的值
24 """
25 print('-'*10,'info of name','-'*10)
26 print("Name    :%s"%name)
27 print("Age     :%s"%age)
28 print("Sex     :%s"%sex)
29 print("Job     :%s"%job)
30 print('-'*10,'end','-'*10)

注:以后练习任何代码养成必要的风格:

(1)在前面写出这段代码的简要,概括什么意思

(2)写出伪代码,按照步骤显示功能,不要上来就开始写代码!

四  运算符

 

        数据之间常常进行各种运算判断,常见的运算符有如下‘’

 1 #算术运算:+、-、*、/、**、%、//
 2 2+2*3-4/2-2*5%2//5
 3 
 4 #逻辑运算(布尔运算)and or  not
 5 True and True  #True
 6 True or  False #True
 7 not False  #True
 8 #赋值运算 +=、-=、*=、/= 9 a = 3
10 a += 5
11 print(a)
12 #比较运算 > < == != <= >=
13 5>=2  #True
14 3<=1  #False
15 #身份运算 is  not is   ==
16 a = 1
17 b = 2
18 c = 1
19 id(a) is id (b) #False
20 id(a) is id(c)  #False 视情况而定
21 #成员运算 in not in
22 num in nums
23 #位运算 与& 或| 非- 异或^ 左移<<  右移>>
24 2 ^ 1 # 0

通过以上基本知识总结,换出思维导图

转载于:https://www.cnblogs.com/qilvzhuiche/p/8874339.html

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.mzph.cn/news/250485.shtml

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

koa --- 使用Sequelize连接mysql

Sequelize介绍 为了快捷开发,社区出现了一系列的ORM(Object Relational Mapping)类库ORM的字面意思为对象关系映射,它提供了概念性的、易于理解的模型化数据的方法。通过ORM,可以降低操作数据库的成本。开发者不需要通过编写SQL脚本来操作数据库,直接通过访问对象的方式来查询…

Android gravity和layout_gravity的区别

一、gravity和layout_gravity相同处 两者都是设置对齐方式的属性。内部的属性值相同。 根据英文意思也能理解其中的意思。如center_horizontal表示在水平方向上的位置为中间。 二、gravity和layout_gravity的不同处 gravity是设置自身内部元素的对齐方式。比如一个TextView&…

koa --- mongoose连接mongoDB

使用Mongoose对MongoDB进行操作 const mongoose require(mongoose); mongoose.connect(mongodb://localhost/test,{ })Mongoose中的Schema 定义Schema categorySchema const categorySchema new mongoose.Schema({name:String,description: String,createdAt:{type: Date,…

Java Web 请求转发与请求重定向

Java Web 请求转发与请求重定向 请求转发 服务器行为&#xff0c;即用户向服务器发送了一次http请求&#xff0c;该请求可能会经过多个信息资源处理以后菜返回给用户&#xff0c;各个信息资源使用请求转发机制互相转发请求&#xff0c;但是用户是感觉不到请求转发的。通过req…

05.RDD详解

05.Spark--RDD详解 RDD详解--groupByKey--reduceByKey [MapPartitionRDD单词统计] 单词统计 import org.apache.spark.{SparkConf,SparkContext} object WordCountScala{def main(args:Array[String]):Unit{//创建spark配置对象val confnew SparkConf()conf.setAppName("W…

Mininet

首先&#xff0c;我折腾了两周多的东西终于弄出一点眉目了。 有以下几个内容需要学习记忆一下。 1.虚拟机&#xff0c;弄不出来共享文件夹&#xff0c;就用U盘吧&#xff0c;贼快还不用安装配置各种东西&#xff0c;virtualbox和VMware都支持。 2.ubantu安装软件中途失败&#…

docker --- 使用docker-compose.yml生成redis,并连接redis-cli

docker.compose.yml 配置 version: 3.1 services:redis:image: redisports:- 6379:6379命令行:docker-compose up 查看: docker ps 进入redis-cli,输入以下 docker exec -it 7dc0a redis-cli -h localhost -p 6379 操作Redis数据 设置 namemarron set name marron 获取nam…

浅谈javaweb三大框架和MVC设计模式

浅谈javaweb三大框架和MVC设计模式转载自&#xff1a;http://blog.csdn.net/sunpeng19960715/article/details/50890705 小序&#xff1a;博主以前在学javaweb的时候开始总不理解javaweb三大框架和MVC框架模式&#xff0c;虽然没有把两者混为一谈&#xff0c;但是也是很晕菜。…

win下配置nginx

1.下载:http://nginx.org/en/download.html 2.在安装目录cmd: start nginx.exe 启动nginx 3.修改默认运行端口80(nginx.conf): HTTP 数据分发 修改配置文件nginx.conf相应节点: 修改完后重启服务: nginx -s reload TCP 数据分发: nginx 1.9以上版本支持tcp转发 配置文件中增加:…

koa --- koa-bouncer验证

使用 koa-bouncer中间件对传入的数据进行验证 const bouncer require(koa-bouncer); app.use(bouncer.middleware());const val async (ctx, next) > {ctx.validateBody(name).required(要求提供用户名).isLength(6, 16, 用户名长度应该为6~16).isString().trim()next();…

fiddler2抓包数据工具使用教程

一款免费且功能强大的数据包抓取软件。它通过代理的方式获取程序http通讯的数据&#xff0c;可以用其检测网页和服务器的交互情况&#xff0c;能够记录所有客户端和服务器间的http请求&#xff0c;支持监视、设置断点、甚至修改输入输出数据等功能。fiddler包含了一个强大的基于…

egg --- 初始化一个egg项目基本结构说明

Egg.js体验 全局安装 // 创建项目 $ npm i egg-init -g $ egg-init egg-example --typesimple $ cd egg-example $ npm i// 启动项目 $ npm run dev $ open localhost:7000Egg.js的结构 路由(Router): 将请求URL和具体承担执行动作的Controller的关系对应控制器(Controller)…

葫芦娃

葫芦娃救爷爷 1.队名——代码那些事儿 2.团队成员 刘佳 211606320&#xff08;队长&#xff09;李佳 211660313周世元 211606348王浩 211606378曾丽丽 211606302陈水莲 211606303许燕婷 211606338杨小妮 2116063413.队长博客链接 -https://www.cnblogs.com/LJ-D/p/9799944.html…

webstorm遇到的问题

问题一&#xff1a;英译&#xff1a;未指定node.js的解释器。 解决方法&#xff1a;将webstorm配置支持node.js并自动补全 步骤&#xff1a; 先下载node.jsFile->Setting->输入Node.js&#xff08;选中点进去&#xff09;->Node imterpreter&#xff08;选择node的安装…

eclipse报错: Could not generate secret

在调用微信接口时&#xff0c;出现一个错误&#xff1a; 一直以为是接口调用问题&#xff0c;经多方查询和尝试解决&#xff0c;最后找到根源&#xff1a; edit-->使用default就可以了。 原因&#xff1a; 在eclipse中运行时&#xff0c;把签名信息给去掉了。 转载于:https:…

koa --- [MVC实现之一]自定义路由读取规则

实现MVC分层架构 目标是创建约定大于配置、开发效率高、可维护性强的项目架构路由处理 规范 所有路由,都要放在routes文件夹中若导出路由对象,使用 动词空格路径 作为key, 值是操作方法若导出函数, 则函数返回第二条约定格式的对象 路由定义: 新建 router/index.js, 默认index…

bzoj1128 Lam-lights

题目描述 对于一个长度为n的数列p&#xff0c;数列中任意两个数互质。准备一个无限长的储存器。然后从p1开始&#xff0c;把储存器中p1倍数位置都赋值为p1&#xff0c;把储存器中p2倍数位置都赋值为p2&#xff0c;把储存器中p3倍数位置都赋值为p3。。。把储存器中pn倍数位置都赋…

koa --- [MVC实现之二]Controller层的实现

[MVC实现之一]传送门 https://blog.csdn.net/piano9425/article/details/103362966 Router层 router这一层,不做业务处理,仅仅只是将路由和路由的处理函数结合起来.路由的处理函数由Controller层实现改进目录结构如下(实际上新建了controller文件夹及其内部子文件,mar.js) …

Layui --- [Mar]给渲染后的表格加CSS样式

为什么要控制样式 使用layui生成后的表格的样式有时候,并不能满足我们的需求.因此在渲染完成后,需要自定义类对其操作 Layui表格渲染后一般会出现以下结构 分结构如下 我把使用layui的table渲染后的表格分为如下的几个dom 1.$rawTable: 初始table,即 2.$renderTable: 渲染之…

Python 框架之Flask初步了解

Python 框架之Flask初步了解 前言 ​ 在了解python web 框架之前&#xff0c;我们需要先了解框架实现的基本原理。首先&#xff0c;需要了解WSGI&#xff08;Web Server Gateway Interface&#xff09;&#xff0c;借助WSGI我们就能实现用Python专注于生成HTML文档&#xff0…