1.什么是变量,为什么需要变量

  变量即变化的量,衡量现实中实物的状态;程序执行的本质就是一系列的状态变化,变是程序本身执行的直接体现,因此程序的执行需要这种机制将执行状态以及状态的变化保存下来。

  1)变量的定义

  规则:

    a.数字、字母、下划线的组合

    b.第一个字符不能为数字

    c.不能使用关键字如Python中的语法字符等

  定义方式:

    

abb = 10
Age = 18
#推荐使用下划线
number_of_oldboy = 'zhang'

  2)注意事项

    a.变量名不宜使用中文

    b.变量名过长

    c.变量名尽量贴合变量的使用(如定义人的年龄:age_of_zh = 20)

  3)垃圾回收机制

    Python中自带垃圾回收机制

  4)变量的三个特征

    a.id---内存编号

    b.type---数据类型

    c.vlaue---变量值

2.数据类型

  数据即变量的值,上面提到变量的存在是为了衡量实物存在的状态的,那么针对不同的状态就应该使用不同的数据去标识。

  1)数字

    整型和浮点型

#int整型
age =18
#可标识:年龄,身份证等 #float浮点型
height = 1.80
#可标识:身高,体重等

  2)字符

    字符串

#加上引号的字符就是字符串,Python中没有字符这一概念
name = 'zhang'
sex = "man"
info = '''
字符串的定义中,使用单引号和双引号并无区别,三引号可实现
多行字符串的定义
''''

    延伸:字符串之间可进行相加和相乘运算

name = 'zhang'
age = ''
res1 = name + age
res2 = name * age

  3)列表

    定义方式:[ ]内使用逗号隔开,列表内可存放无限多个类型的值,且可进行嵌套使用

#定义
student_info = ['zhang',18,['study','grils']]
#取值,取出zhang的第一个爱好
print(sdudent_info[2][0])

  4)字典

    定义方式:{x:y}键和值之间用:隔开,和列表一样也可存放多个值;区别于取值方式,列表的取值通过索引进行取值,字典的取值通过key进行取值;同时,字典也可以进行嵌套使用

userinfo={
'name':'egon',
'age':18,
'company_info':{'name':'oldboy',
'addr':{'country':'China',
'city':'Shanghai',}
}
} print(userinfo['company_info']['addr']['city'])

3.用户交互input()

  Python3.x中的input(),默认将用户输入的值全部存储成字符串,Python2.x与之对应的是raw_input()。除此之外2.x中也存在内置方法input(),但是输入的类型必须明确,因此用户输入什么类型就是什么类型

4.运算符

  1)数学运算符

  2)逻辑运算符

    当存在多个逻辑运算符时,依次从左往右进行判断比较

  3)比较运算符

  4)赋值运算符

  5)身份运算符

    a.is是用于比较id值是否相等

    b.==用于判断两个值是否相等

    补充说明:通常情况下,每声明一个变量就会向系统申请一个内存地址,然而由于Python中自带的内存优化机制,使得在不同的环境下会出现两个值相等的变量的内存地址相同的情况

5.流程控制 if

if 条件1:

  代码块

elif 条件2:

  代码块

......

else:  

  代码块
#练习题
while True:
msg='''
1 加法
2 减法
3 乘法
4 除法
输入'quit'退出
'''
print(msg)
choice = input('>>: ').strip()
if choice == 'quit':
break
else:
num1 = input('输入第一个数字:').strip()
num2 = input('输入第二个数字:').strip()
if choice == '':
res=int(num1)+int(num2)
print('%s+%s=%s' %(num1,num2,res))
elif choice == '':
res=int(num1)-int(num2)
print('%s-%s=%s' %(num1,num2,res))
elif choice == '':
res=int(num1)*int(num2)
print('%s*%s=%s' %(num1,num2,res))
elif choice == '':
res=int(num1)/int(num2)
print('%s/%s=%s' %(num1,num2,res))

6.流程控制while

  1)while + break跳出本次循环

#允许用户最多尝试3次,3次都没猜对的话,就直接退出,如果猜对了,打印恭喜信息并退出
age = 20
count = 0
while count < 3:
age_ip = input("输入年龄:")
if int(age_ip) == age:
print("恭喜,猜对了...")
break #跳出while循环
else:
count += 1
print("输入错误...")
if count == 3:
print("抱歉,你没机会了...")

  2)while + continue

tag = True
username = 'zhang'
password = ''
while tag:
inp_name = input('name>>:')
inp_pwd = input('password>>:')
if inp_name == username and inp_pwd == password:
print('logging successful')
while tag:
cmd = input('cmd>>:')
if cmd == 'quit':
tag = False
continue #退出当前while循环
print('%s 命令正在执行...' % cmd)
else:
print('user or password not vaild!')

7.赋值运算

  1)链式赋值

x = 1
y = x
y=x=a=b=1
print(id(y),id(b))

  2)交叉赋值

m = 1
n = 10
m,n=n,m
print(m,n)

  补充:变量解压

ser = [10,11,12,14]
mon1,mon2,mon3,mon4 = ser
print(mon1,mon2,mon3,mon4)
# 利用 *_ 取前几个或者后几个值
# mon1,mon2,*_=ser
# *_,mon4=ser
# print(mon1,mon2,mon4)

8.进制装换

print(bin(4))   #二进制
print(hex(17)) #十六进制
print(oct(8)) #八进制

Python全栈-day2-day3-语法基础1的更多相关文章

  1. python全栈测试之路-py3基础:基础的常用语法知识

    python基础链接 python3速查参考- python基础 2 -> if语句应用 + while循环应用 https://www.cnblogs.com/wuzhiming/p/7795 ...

  2. Python全栈 Web(HTML基础语法)

    原文地址:           https://yq.aliyun.com/articles/632672 .............................................. ...

  3. python全栈学习--day3

    一.基础数据类型 基础数据类型,有7种类型,存在即合理. 1.int 整数 主要是做运算的 .比如加减乘除,幂,取余  + - * / ** %...2.bool 布尔值 判断真假以及作为条件变量3. ...

  4. 【Python全栈-数据库】数据库基础

    数据库的简介 数据库 数据库(database,DB)是指长期存储在计算机内的,有组织,可共享的数据的集合.数据库中的数据按一定的数学模型组织.描述和存储,具有较小的冗余,较高的数据独立性和易扩展性, ...

  5. 【Python全栈-jQuery】jQuery基础知识

    前端学习之jQuery 一. jQuery是什么? <1> jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多 javascript高手加入其team. < ...

  6. python全栈开发-Day8 函数基础

    python全栈开发-Day8 函数 一 .引子 1. 为何要用函数之不用函数的问题 #1.代码的组织结构不清晰,可读性差 #2.遇到重复的功能只能重复编写实现代码,代码冗余 #3.功能需要扩展时,需 ...

  7. Python全栈开发day3

    1.Pycharm使用介绍 1.1 新建py文件自动添加python和编码 1.2 更改pycharm默认字体和风格 点击左上角“file”-->“Settings”(或者用“Ctrl+Alt+ ...

  8. Python全栈-day1-day2-计算机基础

    计算机基础 1.编程语言 语言即事物之间沟通的介质,编程语言即程序员与计算机沟通的介质.程序员通过编写计算机程序使得计算机能够按照人预先的期望执行相应的动作,从而达到在某种程度上解放人和实现人类难以实 ...

  9. python全栈开发-Day3 字符串

    python全栈开发-Day3 字符串 一.按照以下几个点展开字符串的学习  #一:基本使用 1. 用途 #首先字符串主要作用途径:名字,性别,国籍,地址等描述信息2.定义方式 在单引号\双引号\三引 ...

  10. python全栈开发-Day2 布尔、流程控制、循环

    python全栈开发-Day2 布尔 流程控制 循环   一.布尔 1.概述 #布尔值,一个True一个False #计算机俗称电脑,即我们编写程序让计算机运行时,应该是让计算机无限接近人脑,或者说人 ...

随机推荐

  1. DBGridEh表尾显示合计 .....

    设置如下就可以了..... FooterRowCount  : 1 SumList--------Active:=true 双击 DBGridEh  加入所需要的列....然后在 需要合计的..... ...

  2. ORACLE DIRECTORY目录管理步骤

    ORACLE DIRECTORY目录管理步骤 ORACLE的 DIRECTORY在数据库中是个目录的路径,需要在操作系统中有相应的目录与之对应:ORACLE目录的作用就是让ORACLE数据库和操作系统 ...

  3. Java之旅_面向对象_重写和重载

    参考并摘自:http://www.runoob.com/java/java-override-overload.html 重写(Override) 子类对父类(允许访问的)方法的实现过程进行重新编写, ...

  4. django时间的时区问题(转)

    add by zhj: 使用django时,如果设置USE_TZ=True,那django在数据库中存储的是0时区的时间:如果USE_TZ=False,那存储的是本地时间 原文:https://www ...

  5. swift中 ?和 !的区别

      可选类型(?)与强制解析运算符(!) ?是一种判断后再拆包的语法糖 !是一种强制拆包的语法糖   当你不确定有值的时候就可以用  ? 当你确定有值的时候可以用  !     ?的几种使用场景:1. ...

  6. 【Mock】mock基础、简单的单元测试代码练习。

    说到接口测试,必问 mock,mock 通俗一点来说就是模拟接口返回.解决接口的依赖关系,主要是为了解耦,单元测试用的多. 什么是Mock unittest.mock 是一个用于在 Python 中进 ...

  7. 【JMeter】接口自动化环境搭建

    我们在学习接口自动化的时候,最理想的状态是在公司有项目可以操作.大部分时候我们并没有可以练习的项目,因此练习接口无从谈起,只能找一些开放的api来练一练,但是这样并不能提高我们的技术.因此我们需要搭建 ...

  8. 【接口】【面试题】http协议相关面试题

    浏览器输入 url 按回车背后经历了哪些? 1.在 PC 浏览器的地址栏输入一串 URL,然后按 Enter 键这个页面渲染出来,这个过程中都发生了什么事? 1.首先,在浏览器地址栏中输入 url,先 ...

  9. 如何让帝国CMS7.2搜索模板支持动态标签调用

    帝国cms站内搜索一般不支持动态标签调用,如果要调用如何实现呢?修改两个地方就可以实现了.打开 /e/search/result/index.php 文件,找到(文件改了,不会调用也是徒劳!看看这个帝 ...

  10. 火币网API文档——REST 行情、交易API简介

    REST API 简介 火币为用户提供了一套全新的API,可以帮用户快速接入火币PRO站及HADAX站的交易系统,实现程序化交易. 访问地址 适用站点 适用功能 适用交易对 https://api.h ...