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. [dpdk] 使用pktgen生成tcp三次握手的测试流量

    pktgen: http://dpdk.org/browse/apps/pktgen-dpdk/refs/ git clone git://dpdk.org/apps/pktgen-dpdk pktg ...

  2. BOM简单总结

    先来说一下BOM,什么是BOM?BOM就是浏览器对象模型,大家都知道,ECMAScript是JavaScript的核心,但如果要在WEB中使用JavaScript,那么BOM则无疑才是真正的核心,BO ...

  3. css权重计算规则

    1.第一等:代表内联样式,如 style=" ",权值为1000: 2.第二等:代表ID选择器,如 #content,权值为0100: 3.第三等:代表类,伪类和属性选择器,如 . ...

  4. 高性能网络编程7--tcp连接的内存使用

    滑动窗口的工作方式 窗口通知: 发送端维护发送窗口大小(不在包中传输),接收端在ACK中告知接收窗口大小: 发送窗口初始是发送缓冲区大小,接收窗口初始是接收缓冲区大小:缓冲区决定窗口的最大值: 发送窗 ...

  5. 帝国cms搜索关键字调用标签(showsearch)怎么用

    前面ytkah介绍了如何让帝国CMS7.2搜索模板支持动态标签调用,现在我们来说说怎么调用帝国cms搜索关键字调用标签(showsearch).在帝国cms后台那边的使用方法:[showsearch] ...

  6. 报错解决——ctypes.ArgumentError: argument 1:……….. : wrong type

    运行 python darknet.py 结果报错如下: Traceback (most recent call last): File “darknet.py”, line 136, in net ...

  7. 右键菜单添加git选项

    1.jpg   2.jpg   3.jpg   4.jpg   5.jpg   6.jpg   7.jpg

  8. 轻量级ORM工具Simple.Data

    今天推举的这篇文章,本意不是要推举文章的内容,而是据此介绍一下Simple.Data这个很有意思的类ORM工具. 现在大家在.NET开发中如果需要进行数据访问,那么基本都会使用一些ORM工具,比如微软 ...

  9. asp.net中Request请求参数的自动封装

    这两天在测一个小Demo的时候发现一个很蛋疼的问题----请求参数的获取和封装,例: 方便测试用所以这里是一个很简单的表单. <!DOCTYPE html> <html xmlns= ...

  10. PHP数字字符串左侧补0、字符串填充和自动补齐的几种方法

    一.数字补0. 如果要自动生成学号,自动生成某某编号,就像这样的形式“d0000009”.“d0000027”时,那么就会面临一个问题,怎么把左边用0补齐成这样8位数的编码呢?我想到了两种方法实现这个 ...