Python全栈-day2-day3-语法基础1
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的更多相关文章
- python全栈测试之路-py3基础:基础的常用语法知识
python基础链接 python3速查参考- python基础 2 -> if语句应用 + while循环应用 https://www.cnblogs.com/wuzhiming/p/7795 ...
- Python全栈 Web(HTML基础语法)
原文地址: https://yq.aliyun.com/articles/632672 .............................................. ...
- python全栈学习--day3
一.基础数据类型 基础数据类型,有7种类型,存在即合理. 1.int 整数 主要是做运算的 .比如加减乘除,幂,取余 + - * / ** %...2.bool 布尔值 判断真假以及作为条件变量3. ...
- 【Python全栈-数据库】数据库基础
数据库的简介 数据库 数据库(database,DB)是指长期存储在计算机内的,有组织,可共享的数据的集合.数据库中的数据按一定的数学模型组织.描述和存储,具有较小的冗余,较高的数据独立性和易扩展性, ...
- 【Python全栈-jQuery】jQuery基础知识
前端学习之jQuery 一. jQuery是什么? <1> jQuery由美国人John Resig创建,至今已吸引了来自世界各地的众多 javascript高手加入其team. < ...
- python全栈开发-Day8 函数基础
python全栈开发-Day8 函数 一 .引子 1. 为何要用函数之不用函数的问题 #1.代码的组织结构不清晰,可读性差 #2.遇到重复的功能只能重复编写实现代码,代码冗余 #3.功能需要扩展时,需 ...
- Python全栈开发day3
1.Pycharm使用介绍 1.1 新建py文件自动添加python和编码 1.2 更改pycharm默认字体和风格 点击左上角“file”-->“Settings”(或者用“Ctrl+Alt+ ...
- Python全栈-day1-day2-计算机基础
计算机基础 1.编程语言 语言即事物之间沟通的介质,编程语言即程序员与计算机沟通的介质.程序员通过编写计算机程序使得计算机能够按照人预先的期望执行相应的动作,从而达到在某种程度上解放人和实现人类难以实 ...
- python全栈开发-Day3 字符串
python全栈开发-Day3 字符串 一.按照以下几个点展开字符串的学习 #一:基本使用 1. 用途 #首先字符串主要作用途径:名字,性别,国籍,地址等描述信息2.定义方式 在单引号\双引号\三引 ...
- python全栈开发-Day2 布尔、流程控制、循环
python全栈开发-Day2 布尔 流程控制 循环 一.布尔 1.概述 #布尔值,一个True一个False #计算机俗称电脑,即我们编写程序让计算机运行时,应该是让计算机无限接近人脑,或者说人 ...
随机推荐
- Fiddler笔记一移动端连接
一.下载Fiddler 百度搜索”fiddler 下载“ ,安装最新版本 二.Fiddler手机抓包原理 在本机开启了一个http的代理服务器,然后它会转发所有的http请求和响应. Fiddle ...
- vue中封装一个全局的弹窗js
/** * Created by yx on 2017/12/21. */ export default { /** * 带按钮的弹框 * <!--自定义提示标题,内容,单个按钮事件--> ...
- 命令行安装kvm虚拟机、桥接网络、用virt-manager管理
宿主机CentOS Linux release 7.2.1511 (Core),内核3.10.0-327.el7.x86_64 1.配置宿主机网络桥接 想让虚拟机有自己的ip且外网可访问,需要在安装虚 ...
- css三种样式表写法
css三种样式表:1.内嵌样式表: <head> <style type="text/css"> 样式表写法 </style> < ...
- replace函数的使用(替换单个和全局)
//单个 var aa="1-2-3"; aa=aa.replace(',',"."); console.log(aa); //全局替换 var aa=&quo ...
- 怎么使用JavaScript进行进制转换
JS 是一个很神奇的语言,内制的的很多函数可以帮我们进行数(进)制转换: JS中可以直接使用16进制: var a = 0xff; //255 将任意进制字符串转换为十进制,如二进制,八进制,十六进制 ...
- 004-restful应用构建、分布式会话、测试工具简介
一.概述 什么是rest(表述性状态转移,Representational State Transfer)是一种架构风格.他定义了创建可扩展Web服务的最佳实践. 1.Richardson成熟度模型 ...
- 【LNMP】提示Nginx PHP “No input file specified”错误的解决办法
原理: 任何对.php文件的请求,都简单地交给php-cgi去处理,但没有验证该php文件是否存在. PHP文件不存在,没办法返回普通的404错误,它返回 一个404,并带上一句”No input f ...
- 常见的local variable 'x' referenced before assignment问题
def fun1(): x = 5 def fun2(): x *= 2 return x return fun2() 如上代码,调用fun1() 运行会出错:UnboundLocalError: l ...
- Angular知识点
Angular CLI 快速创建Angular 2项目和组件, 压缩打包发布. 7.创建包含html.ts.css文件的命令cd到需要创建文件的目录下面,输入如下命令 ng g c myFile 会自 ...