day 1总结-python基础
第一天的复习
目录:
1.编程语言的区分
2.python的优缺点
3.python环境的搭建,版本之间的大致区别
4.代码的注释规则
5.变量
6.常量
7.基本程序交互
8.基础数据类型
9.基础循环,if循环与while循环
正文开始
1.编程语言的区分
编程语言根据分类主要分以下一些语言,编译型语言与解释型语言,静态语言与动态语言,强类型定于语言与弱类型定义语言,对上面这些定义做一些解释
1.1 编译型语言与解释型语言
对于编程,都需要将语言编译为机器可以识别的二进制的机器语言,机器才能够明白你要做什么
编译型语言:将编辑好的整体代码打包直接编译为二进制文件,可以独立运行,机器可以直接识别并运行。
优点:整体代码只需要编译一次即可,可以脱离编辑工具在机器上独立运行,运行速度快,执行效率高
缺点:对于代码修改,每次修改都需要重新编译一次,开发效率相对较低,对于平台移植,移植过程中都需要对每一个平台进行适配
解释性语言:对于编辑好的整体代码并不是整体打包,在提交给机器识别的过程中是使用编译器逐行解释,逐行执行。
优点:代码修改,随时修改,随时解释,迭代更新速度快,开发效率高,对于平台移植兼容性较好,多平台移植可以使用较少的时间
缺点:执行效率相对较慢(与c语言相比执行效率低10倍,不过人还是无法察觉出来的),每次编译必须使用编译器,代码整体为明文,不能加密
1.2 静态语言与动态语言
静态语言:个人理解为静态语言类似C,C++等语言,在编程开始就需要定义变量,在编译期间就会检查变量的正确性,变量定义错误整体无法编译下去
动态语言:个人理解为动态语言类似python,ruby这种语言,在编译期间不会检查变量的正确性,只是在程序调用的时候才会寻找变量
1.3 强类型定义语言与弱定义类型语言
强定义类型语言:强制数据类型语言,一个变量在定义初始定义为一种类型,除非强制转换,那么他永远都是那种数据类型
弱定义类型语言:数据类型可以被忽略的一种语言,一个变量可以定义不同的数据类型
#以上我们看出python为解释性动态强类型定义语言
2.python的优缺点
任何一门语言都有它的优缺点,需要理性的看待,每一门语言都不是万能的
2.1优点:高级语言,不用关心底层内存指针等
可移植性好,可以很容易的迁移到不同平台
可嵌入性,可以很快的将python的代码嵌入c以及c++中
可拓展性,可以将c语言等拓展到python中
开发效率高,第三方库众多,可以随时调用
解释型语言,入门门槛低
2.2缺点:编译速度慢,大神嫌弃,我等屌丝感觉差不多
代码明文,无法将代码加密化
线程不能多CPU调用(暂时不清白)
3.python环境的搭建,不同版本的区别
python环境在目前主要有俩个大版本,有3.0与2.7俩个大版本,本次学习主要是以2.7版本学习为主,本次学习使用2.7.13与3.6.6版本
3.1.环境搭建,2.7版本默认安装下一步下一步即可,3.6版本安装建议选择自定义安装,将安装位置指定为c盘根目录下。下一步为环境变量设定
按照这样的设定后,电脑内是属于双环境,在cmd中输入python默认使用3.6.6版本,在输入python2则会调用2.7.13版本
3.2版本区别
3.2.1 在python2.7版本中,默认为ASCII,若输出中文,需要在首行定义规则,# -*- enconding:utf-8 -*-
有int型与long之分
源代码比较混乱,不够简单清晰明了
3.2.2 在python3x版本中,默认的为utf-8,可以编辑中文,对于数字只有int没有int和long之分
4.代码的注释规则
对于每一门语言学习的开始,学会对自己的代码注释是基础的开始,对于python主要有俩种注释方式,一为单行注释,二为多行注释
4.1 单行注释,针对每一行进行注释,例如
print("Hello World!")#打印hello world!
4.2 多行注释,有的时候注释不可能只是一行搞定,这个时候就需要多行注释,例如
"""
第一天终于开始了
感觉好轻松哈,笑!
打印一行最基本的hello world吧,程序员的第一个代码!
"""
print("Hello World!")
一些其他的使用技巧,只是目前知道的,按住ctrl键加/就可以对选中的多行进行多行注释,其他的在整理吧
5.变量
变量就是将程序运行的中间结果放在临时内存中,方便后续对于变量的调用
5.1 声明变量,看例子
name = 'time'
print(name)
这个例子中name就是变量,将time这个字符赋值给name,这个量就已经保存在内存中了,后续就很方便的在内存中调用了
5.2 变量的定义规则
5.2.1 变量只能用数字,字母和下划线组成
5.2.2 变量的第一个字符不能是数字
5.2.3 变量不能用系统中关键字符,例如if,while等关键字符
5.2.4 变量定义最好规范定义,例如驼峰体或者是下划线的方式,例如AgeOfOldboy,或者是age_of_oldboy
5.2.5 变量定义具有可描述性,没有含义
5.2.6 变量名字尽量不要过长
5.2.7 变量名字不要使用中文
age1 = 18
age2 = age1
print(age1,age2) #结果
18 18
a1 = 18
a2 = a1
a3 = a2
a2 = 36
print(a1,a2,a3) #结果
18 36 18
#综上说明pythoon中变量只是指向到内存地址,变量变更不影响内存地址
6.常量
常量就是在程序代码中不会轻易改动的变量,在python中虽然没有规定具体的定义方式,不过默认还是使用全大写的形式,例如AGE_OF_OLDBOY = 56
7.基本程序交互
基本程序交互主要形式有三种,字符串拼接,格式化输出
7.1字符串拼接,例如
name = 'alex'
age = ' 15岁'
print(name+age) #结果
alex 15岁
#一般不经常使用字符串拼接的方式,比较占用内存,字符串拼接只能是双方都是字符串,如果一方是int型就会报错
7.2格式化输出,例如
#格式化输出
name =input("Name:")
age =int(input("Age:"))
job = input("Job:")
salary = input("Salary:") #第一种 msg = '我的名字是%s,我的年龄是%s岁,我的工作是%s,我的薪酬为%s'%(name,age,job,salary) #第二种
msg1 = '我的名字是{},我的年龄是{}岁,我的工作是{},我的薪酬为{}'.format(name,age,job,salary) #第三种 #使用字典的方式
dic ={'name':name,'age':age,'job':job,'salary':salary}
msg2 = '我的名字是%(name)s,我的年龄是%(age)s,我的工作是%(job)s,我的薪酬为%(salary)s'%dic
8.基础数据类型
8.1 int与long型
简单的说int就是整型的数字,64位系统最大数字为2的64次方-1,超过这个数值就需要使用长整型,long
8.2 str型
就是简单的字符串形式,python中默认的就是字符串形式,对于数字需要在输入前加入int()强制更改数值类型
8.2.1字符串的拼接
name= input('请输入你的用户名:')
age = int(input('请输入你的年龄'))
sex = input('请输入你的性别')
msg = '我的名字是'+name+','+'我的年龄是'+age+'岁,'+'性别是'+sex
8.2.2字符串的计算
>>> type(name),type(age2)
(<type 'str'>, <type 'int'>)
>>>
>>> name
'Alex Li'
>>> age2
>>> name + age2
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: cannot concatenate 'str' and 'int' objects #错误提示数字 和 字符 不能拼接 #字符串的计算,字符串也可以计算的
msg='坚强'
msg1 = msg*10
print(msg1) #结果就是10个坚强相连
8.3 布尔值
布尔值只有俩个,TRUE与FALSE,例如
>>> a = 3
>>> b = 4
>>> a>b
False
>>> a<b
True
9.基础循环,if循环与while循环
9.1 if循环的使用
#if的使用
number = int(input('请输入你的数字:'))
if number == 1:
print('you are very good!') #if与else的使用
number = int(input('请输入你的数字:'))
if number >5:
print('你比我大哦!')
else:
print('你比我小哦!') #if与elif的使用
number = int(input('请输入你的数字:'))
if number >0:
print('你比0大!')
elif number >3:
print('你比3大!')
elif number >5:
print('你比5大!') #if与elif与else的使用
number = int(input('请输入你的数字:'))
if number == 1:
print('带你飞!')
elif number == 3:
print('带你浪!')
else:
print('sorry啦!')
#简单嵌套if函数的使用
name = 'aelx'
password = 123
user = input('请输入用户名>>>')
ps = input('请输入用户名密码>>>')
if user == name :
if ps == password:
print('登录成功,欢迎你!')
elif:
print('你输入的密码错误,退出!')
else:
print('你输入的用户名不存在!')
day 1总结-python基础的更多相关文章
- python之最强王者(2)——python基础语法
背景介绍:由于本人一直做java开发,也是从txt开始写hello,world,使用javac命令编译,一直到使用myeclipse,其中的道理和辛酸都懂(请容许我擦干眼角的泪水),所以对于pytho ...
- Python开发【第二篇】:Python基础知识
Python基础知识 一.初识基本数据类型 类型: int(整型) 在32位机器上,整数的位数为32位,取值范围为-2**31-2**31-1,即-2147483648-2147483647 在64位 ...
- Python小白的发展之路之Python基础(一)
Python基础部分1: 1.Python简介 2.Python 2 or 3,两者的主要区别 3.Python解释器 4.安装Python 5.第一个Python程序 Hello World 6.P ...
- Python之路3【第一篇】Python基础
本节内容 Python简介 Python安装 第一个Python程序 编程语言的分类 Python简介 1.Python的由来 python的创始人为吉多·范罗苏姆(Guido van Rossum) ...
- 进击的Python【第三章】:Python基础(三)
Python基础(三) 本章内容 集合的概念与操作 文件的操作 函数的特点与用法 参数与局部变量 return返回值的概念 递归的基本含义 函数式编程介绍 高阶函数的概念 一.集合的概念与操作 集合( ...
- 进击的Python【第二章】:Python基础(二)
Python基础(二) 本章内容 数据类型 数据运算 列表与元组的基本操作 字典的基本操作 字符编码与转码 模块初探 练习:购物车程序 一.数据类型 Python有五个标准的数据类型: Numbers ...
- Python之路【第一篇】python基础
一.python开发 1.开发: 1)高级语言:python .Java .PHP. C# Go ruby c++ ===>字节码 2)低级语言:c .汇编 2.语言之间的对比: 1)py ...
- python基础之day1
Python 简介 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python为我们提供了非常完善的基础代码库,覆盖了 ...
- python基础之文件读写
python基础之文件读写 本节内容 os模块中文件以及目录的一些方法 文件的操作 目录的操作 1.os模块中文件以及目录的一些方法 python操作文件以及目录可以使用os模块的一些方法如下: 得到 ...
- python基础之编码问题
python基础之编码问题 本节内容 字符串编码问题由来 字符串编码解决方案 1.字符串编码问题由来 由于字符串编码是从ascii--->unicode--->utf-8(utf-16和u ...
随机推荐
- 带着新人学springboot的应用06(springboot+RabbitMQ 中)
上一节说了这么多废话,看也看烦了,现在我们就来用鼠标点点点,来简单玩一下这个RabbitMQ. 注意:这一节还是不用敲什么代码,因为上一节我们设置了那个可视化工具,我们先用用可视化工具熟悉一下流程. ...
- RabbitMQ消息队列(十四)-启用SSL安全通讯
如果RabbitMQ服务在内网中,只有内网的应用连接,我们认为这些连接都是安全的,但是个别情况我们需要让RabbitMQ对外提供服务.这种情况有两种解决方案: 在RabbitMQ外层在封装一层应用,应 ...
- SQL优化总结之一
一.实践中如何优化mysql 1) SQL语句及索引的优化 2) 数据库表结构的优化 3) 系统配置的优化 4) 硬件优化 二.索引的底层实现原理和优化 2.1 底层实现 在DB2数据库中索引采用的是 ...
- Docker Compose 引用环境变量
在项目中,往往需要在 docker-compose.yml 文件中使用环境变量来控制不同的条件和使用场景.本文集中介绍 docker compose 引用环境变量的方式.说明:本文的演示环境为 ubu ...
- 从设计模式的角度看Java程序优化
一.前言 Java程序优化有很多种渠道,比如jvm优化.数据库优化等等,但都是亡羊补牢的措施,如果能在设计程序架构时利用设计模式就把程序的短板解决,就能使程序更加健壮切容易维护迭代 二.常用的设计模式 ...
- 关于 vue 不能 watch 数组变化 和 对象变化的解决方案
原文地址:关于 vue 不能 watch 数组变化 和 对象变化的解决方案 vue 监听数组和对象的变化 vue 监听数组 vue 实际上可以监听数组变化,比如: data () { return { ...
- 利用 c# linq 实现跨数据库的联合查询
有个需求就是,我们要查询的信息分布在两个不同的数据库中,通过外键相互关联起来,然后返回datatable在前端展示内容. 根据需求我们可以考虑c#的linq 先在从不同的数据中获取相关的datatab ...
- Hdu 3001 Travelling 状态DP
题目大意 一次旅游,经过所有城市至少一次,并且任何一座城市访问的次数不能超过两次,求最小费用 每个城市最多访问两次,用状态0,1,2标识访问次数 把城市1~N的状态按照次序连接在一起,就组成了一个三进 ...
- [LeetCode] 1. Two Sum 两数之和
Part 1. 题目描述 (easy) Given an array of integers, return indices of the two numbers such that they add ...
- WEB前端开发记录PS常见操作
1.相邻2个层合并的快捷键方法:先选择上面的一个层,再按ctrl+e. 2.合并一个组内的多个层或组:在该组单击右键,选择“转换为智能对象”,然后可对其进行其它操作,比如:截取该组的为一张图片:ctr ...