Python基础(Day1)
一、Python的简介
1.Python的诞生
python的创始人为吉多·范罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。
2.目前Python主要应用领域:
- 云计算: 云计算最火的语言, 典型应用OpenStack
- WEB开发: 众多优秀的WEB框架,众多大型网站均为Python开发,Youtube, Dropbox, 豆瓣。。。, 典型WEB框架有Django
- 科学运算、人工智能: 典型库NumPy, SciPy, Matplotlib, Enthought librarys,pandas
- 系统运维: 运维人员必备语言
- 金融:量化交易,金融分析,在金融工程领域,Python不但在用,且用的最多,而且重要性逐年提高。原因:作为动态语言的Python,语言结构清晰简单,库丰富,成熟稳定,科学计算和统计分析都很牛逼,生产效率远远高于c,c++,java,尤其擅长策略回测
- 图形GUI: PyQT, WxPython,TkInter3
3.Python是什么编程语言
编程语言主要从以下几个角度为进行分类,编译型和解释型、静态语言和动态语言、强类型定义语言和弱类型定义语言。
解释型:程序运行时将代码一行一行的解释转换成二进制。
优点:开发效率高、排错快、可以跨平台。
缺点:每次运行的时候都要解释一遍,执行效率相对慢。
编译型:将代码一次性编译成机器语言,并保存成二进制再运行。
优点:执行效率高。
缺点:排错慢、开发效率低、不能跨平台。
4.Python的优缺点
优点:
- Python的定位是“优雅”、“明确”、“简单”,所以Python程序看上去总是简单易懂,初学者学Python,不但入门容易,而且将来深入下去,可以编写那些非常非常复杂的程序。
- 开发效率非常高,Python有非常强大的第三方库,基本上你想通过计算机实现任何功能,Python官方库里都有相应的模块进行支持,直接下载调用后,在基础库的基础上再进行开发,大大降低开发周期,避免重复造轮子。
- 高级语言————当你用Python语言编写程序的时候,你无需考虑诸如如何管理你的程序使用的内存一类的底层细节
- 可移植性————由于它的开源本质,Python已经被移植在许多平台上(经过改动使它能够工 作在不同平台上)。如果你小心地避免使用依赖于系统的特性,那么你的所有Python程序无需修改就几乎可以在市场上所有的系统平台上运行
- 可扩展性————如果你需要你的一段关键代码运行得更快或者希望某些算法不公开,你可以把你的部分程序用C或C++编写,然后在你的Python程序中使用它们。
- 可嵌入性————你可以把Python嵌入你的C/C++程序,从而向你的程序用户提供脚本功能。
缺点:
1.运行速度慢。
2.代码不能加密。
3.线程不能利用多CPU。
5.Python的种类
CPython(用C语言开发的解释器),JPython(运行在Java平台上的解释器)、IPython(基于CPython之上的一个交互解释器)、PyPy(对python代码进行动态编译,目标是执行速度)、IronPython(运行在微软.Net平台上的Python解释器)。
6.Python2x与Python3x的区别
- Python2x默认编码ascii码,不能识别中文;Python3x默认编码是unicode可以识别中文。
- Python2x的输入:raw_input(); Python3x的输入:input()。
- Python2x的输出:print可以不加(); Python3x的输出:print()。
- Python2x除法当两个整型相除(除数不能为0),值是个整型; Python3x两个整型相除值可以是浮点型。
二、Python基础初识
1、变量
变量是把程序运行的中间结果临时存在内存里,以便后续的代码调用。
变量的命名规则:
- 变量名只能是数字、字母和下划线。
- 变量名不能以数字开头。
- 变量名要有可描述性。
- 变量名不能是python的关键字。
- 变量名不能是中文、变量名不能太长。
- 官方推荐的两种形式:驼峰体和下划线
#驼峰体
AgeOfOldboy = 56
NumberOfStudents = 80
#下划线
age_of_oldboy = 56
number_of_students = 80
变量的赋值:等号右边的值赋给等号左边的变量名,python是解释型语言,代码一行一行的执行,后面的变量会覆盖前面的。
age1 =12
age2=age1
age3=age2
age2=6
print(age1,age2,age3)
执行结果:12 6 12

2、常量
常量指不变的量或在程序运行过程中不会改变的量,在Python中没有一个专门的语法代表常量,程序员约定俗成用变量名全部大写代表常量。
AGE_OF_OLDBOY = 56
3、注释
单行注释:#
多行注释:""" """或‘’‘ ’‘’
4、程序交互 input
name=input('请输入你的名字:')
age=input('请输入你的年龄:')
hobby=input('请输入你的爱好:')
print(name,age,hobby)
#input输出的数据类型都是str
5、基础数据类型
- int(整型)long(长整型)#在Python3里不再有long类型了,全都是int
- str(字符串)#加了引号的字符都被认为是字符串,多行字符串用多引号
- bool(布尔值:False、True)
- list(列表)
- tuple(元组)
- dict(字典)
- set(集合)
查看数据类型使用type()
n1='guo'
n2=True
n3='False'
print(type(n1))
print(type(n2))
print(type(n3))
执行结果:
<class 'str'>
<class 'bool'>
<class 'str'>
6、格式化输出(%占位符、s-str字符串、d-digit数字)
第一种:
name=input('请输入你的姓名:')
age=input('请输入你的年龄:')
hobby=input('请输入你的爱好:')
msg='我叫%s,今年%d岁,爱好%s'%(name,int(age),hobby)
print(msg)
执行结果:
请输入你的姓名:圆圆
请输入你的年龄:18
请输入你的爱好:睡觉
我叫圆圆,今年18岁,爱好睡觉
第二种:
dic={'name':'圆圆','age':18,'hobby':'买买买'}
msg='我叫%(name)s,今年%(age)d岁,爱好%(hobby)s'% dic
print(msg)
执行结果:
我叫圆圆,今年18岁,爱好买买买
第三种:在格式化输出中单纯的想要显示%,用%%解决。
name=input('请输入你的姓名:')
age=input('请输入你的年龄:')
msg='我叫%s,今年%d岁,学习进度为10%%'%(name,int(age))
print(msg)
执行结果:
请输入你的姓名:yuanyuan
请输入你的年龄:18
我叫yuanyuan,今年18岁,学习进度为10%
7、逻辑运算符 (and、or、not)
数据类型的转换:int---->bool 0为False,非0为True。
bool---->int False为0,True为1。
第一种:前后都是比较运算,优先级()>not>and>or,同一优先级从左至右依次计算。
print(1>2 and 3<4 and 3>2 or 2<3 )
执行结果:
True
第二种:前后都是数值运算
优先级:x or y,如果x为True,则返回x,否则返回y。
x and y,如果x为True,则返回y,否则返回x。
print(1 or 3)
print(1 and 3)
执行结果:
1
3
第三种:混合运算
print(1>2 or 3 and 4)
print(2 or 2>3 and 4)
执行结果:
4
2
8、in、not in 判断子元素是否在原字符串(字典,列表,集合)中,从左到右依次检测
s='老男孩AlexWusir'
print('老男孩' in s)
执行结果:
True
print('老男孩Wusir' in s)
执行结果:
False
9、if 语句
1)第一种结构
if 条件:
结果
2)第二种结构
if 条件:
结果
else:
结果
3)第三种结构
if 条件1:
结果1
elif 条件2:
结果2
elif 条件3
结果3
例:
choice=input('请输入你猜的数字:')
if choice =='2':
print('我请你吃饭')
elif choice=='3':
print('免一周作业')
elif choice=='4':
print('一起去玩')
执行结果:
请输入你猜的数字:2
我请你吃饭
4)第四种结构
if 条件1:
结果1
elif 条件2:
结果2
elif 条件3
结果3
else:
结果4
例:
choice=input('请输入你猜的数字:')
if choice =='2':
print('我请你吃饭')
elif choice=='3':
print('免一周作业')
elif choice=='4':
print('一起去玩')
else:
print('输入错误')
执行结果:
请输入你猜的数字:6
输入错误
5)第五种结构
if 条件:
if 条件:
结果
else:
结果
else:
结果
例:
age=input('请猜我的年龄:')
if True:
if age=='18':
print('恭喜你猜对了')
else:
print('这都看不出来')
else:
print('输入错误')
执行结果:
请猜我的年龄:22
这都看不出来
10、while语句
1)第一种结构
while 条件:
结果
例:
while True:#死循环
print(111)
print(333)
print(444)
执行结果:
111
333
...
...
2)第二种结构
while 条件:
else:
例1:
count=1
while True:
print(count)
if count==3:break#循环被break打断,程序不会走else
count+=1
else:
print('循环结束') 执行结果:
1
2
3
例2:
while True:
print(111)
print(222)
continue#遇到continue时continue下面的代码不执行,返回继续执行continue以上的循环
print(333) 执行结果: 222 333 ... ...
#如何结束循环:1.改变条件,2.break。
用while循环打印1-100的方法:
第1种:
flag=True
count=1
while flag:
print(count)
count+=1
if count==100:
print(count )
flag=False
执行结果:1
2
...
100
第2种:
count=1
while count<101:
print(count)
count+=1
第3种:
count=1
while True:
print(count)
count+=1
if count==101:
break
Python基础(Day1)的更多相关文章
- python基础day1
一.python介绍 1.1简介 Python (英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/), 是一种面向对象的解释型计算机程序设计语言,由荷兰人Guido van Rossum ...
- Python基础Day1—上
一.计算机基础 CPU:中央处理器,相当于人的大脑:运算中心与控制中心的结合. 内存:临时存储数据,与CPU交互. 硬盘:永久存储数据. 内存的优点:读取速度快 内存的缺点:容量小,造价高,断电数据会 ...
- python基础 Day1
Python开发笔记 Day1 1.cpu内存 硬盘 操作系统 cpu:计算机的运算和计算中心,相当于人类大脑 内存:暂时存储数据,临时加载数据应用程序,4G(内存速度快,断电即消失) 硬盘:磁盘,长 ...
- Python基础Day1—下
六.Python运行 print() 打印命令,输出到屏幕上 操作: 命令提示符-->输入Python-->文件路径 若输入Python回车报错或者提示没有,则Python解释器没有安 ...
- python基础day1&2
解决中文乱码问题 在开头加上 -*- encoding:utf-8 -*- if条件 if 条件: 结果#if elif else是单选,只走一条路 num = input('Please input ...
- Day1 - Python基础1 介绍、基本语法、流程控制
Python之路,Day1 - Python基础1 本节内容 Python介绍 发展史 Python 2 or 3? 安装 Hello World程序 变量 用户输入 模块初识 .pyc是个什么鬼 ...
- python计算机基础-Day1
计算机基础-Day1 一.计算机基础 首先Python是一门编程语言 语言: 那什么是语言?语言就是一种事物与另一种事物沟通的介质. 所以说编程语言是程序员跟计算机沟通的介质,那么为什么要跟计算机沟通 ...
- python基础之day1
Python 简介 Python是著名的“龟叔”Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. Python为我们提供了非常完善的基础代码库,覆盖了 ...
- python基础篇-day1
python基础篇 python是由C语言写的: pass 占位符: del,python中全局的功能,删除内存中的数据: 变量赋值的方法: user,pass = 'freddy','freddy1 ...
- Day1 Python基础学习
一.编程语言分类 1.简介 机器语言:站在计算机的角度,说计算机能听懂的语言,那就是直接用二进制编程,直接操作硬件 汇编语言:站在计算机的角度,简写的英文标识符取代二进制去编写程序,本质仍然是直接操作 ...
随机推荐
- Python的内存管理和垃圾回收机制
内存管理 Python解释器由c语言开发完成,py中所有的操作最终都由底层的c语言来实现并完成,所以想要了解底层内存管理需要结合python源码来进行解释. 1. 两个重要的结构体 include/o ...
- Win10+Java7环境配置
原文链接: https://www.toutiao.com/i6487838676326810125/ 安装包: jdk-7u79-windows-x64-20151024 打开安装目录 双击运行程序 ...
- PIKACHU之文件包含漏洞
PIKUCHU靶场之文件包含 一.file inclusion(local) 实验源码: <?php /** * Created by runner.han * There is nothing ...
- Solon 开发,五、切面与环绕拦截
Solon 开发 一.注入或手动获取配置 二.注入或手动获取Bean 三.构建一个Bean的三种方式 四.Bean 扫描的三种方式 五.切面与环绕拦截 六.提取Bean的函数进行定制开发 七.自定义注 ...
- 使用idea时jsp中使用out.print();时报错的解决办法
在用Maven创建web项目时 在jsp页面中out.print();老是报错 这边print显示红色出错因为这边使用的是JSP的API并不是Servlet的,但是可以运行,所以我们只要导包就完事其实 ...
- 【刷题-PAT】A1108 Finding Average (20 分)
1108 Finding Average (20 分) The basic task is simple: given N real numbers, you are supposed to calc ...
- 【测试数据】android下CPU核与线程数的关系
测试方法 24MB的一张4K图片,连续计算5次直方图. 小米mix2s, 高通骁龙 845.4大核,4小核. 数据表格 线程数 绝对时间(s) 累计CPU时间(s) 每线程平均耗时(us) 每线程最大 ...
- android+opencv+opencl: cv::dft()的opencl版本的性能分析
在小米mix 2s + 高通骁龙 845 + Adreno 630 上测试了opencl版本的cv::dft(). 测试数据 先看表格里面的描述: 名称 函数名 最大时间(ms) 平均时间(ms) 说 ...
- CSS设置标签、图片放大、缩小、旋转、移动(tranform)
CSS设置标签.图片放大.缩小.旋转.移动(tranform) 1.缩小和放大属性(scale) 格式:tranform:缩小类型(数值): 注意:缩小和放大都是 scale : 其中的值(0~1)代 ...
- Qt中添加静态库.lb,.a和动态库.dll,.so,头文件和.cpp文件
添加步骤 1.-Qt Creator中,"项目"------"添加库"2.把静态库和动态库文件放到项目文件夹中3.在.pro文件中会添加如下代码: - 添加动态 ...