Day01:我的Python学习之路
1、Python是什么语言?
Python是动态的解释性的强类型定义的语言。
(1)动态语言与静态语言
①静态语言:在编译期间就会去做数据类型检查的语言,如C,C++。
②动态语言:在运行期间才会去做数据类型检查的语言,如Python。
当用动态类型的语言编程时,不需要给任何变量指定数据类型,该语言会在你第一次赋值给变量时,在内部将数据类型记录下来。
(2)编译型语言与解释型语言
①编译型语言:一次性将源文件转换成目标文件。
如果我们写的程序代码都包含在一个源文件中,那么通过编译之后就会直接生成一个可执行文件,我们就可以直接运行了。
如果项目比较复杂,程序代码分散在多个源文件中,那么编译之后,一般一个源文件就会对应一个目标文件,此时我们需要链接程序(Linker)将所有的目标文件转换成可执行文件。
②解释型语言:在程序运行的前一刻,还只有源程序而没有可执行程序,而程序每执行到源程序的某一条指令,则会有一个称之为解释程序的外壳程序将源代码转换成二进制代码以供执行。总而言之,就是不断地解释、执行、解释、执行......所以,解释型程序是离不开解释程序的。
由于解释型语言是将编译的过程放到执行过程中,这就决定了解释型语言注定要比编译型语言慢上一大截,像几百倍的速度差距也是不足为奇的。
(3)强类型定义与弱类型定义语言
①强类型定义语言:一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型。因此,强类型定义语言是类型安全的语言。
②弱类型定义语言:数据类型可以被忽略的语言。它与强类型定义语言相反, 一个变量可以赋不同数据类型的值。
强类型定义语言在速度上可能略逊色于弱类型定义语言,但是强类型定义语言带来的严谨性能够有效的避免许多错误。
2、Python的解释器
Python的解释器很多,但使用最广泛的还是CPython。如果程序要和Java或.Net平台交互,最好的办法不是用Jython或IronPython,而是通过网络调用来交互,确保各程序之间的独立性。另外还有一个Python的解释器:PyPy,它的目标是提高执行速度。
3、Python中变量定义的规则
(1)变量名只能由字母、数字或下划线的任意组合;
(2)变量名的第一个字符不能是数字;
(3)关键字不能声明为变量名。
Python中有如下一些关键字:
and as assert break class continue def del
elif else except exec finally for from global
if import in is lambda not or pass
print raise return try while with yield
4、第一个程序:Hello World!
# Author:GCL s="Hello World"
print(s) name="gcl"
name1=name
print(name,name1)
name="lmy"
print(name,name1)
Hello World!
输出:

注意:Python3的默认编码方式是:utf-8
5、用户输入与格式化输出
输入函数:input()
# Author:GCL # 用户输入函数:input()
name=input("姓名:")
age=int(input("年龄:")) """
方式一:数据拼接,但是会开辟多块内存,效率低,不推荐
"""
info1="""
=====个人信息一 """+name+"""=====
姓名:"""+name+"""
年龄:"""+str(age)
print(info1) """
方式二:格式化输出:%
"""
info2="""
=====个人信息二 %s=====
姓名:%s
年龄:%d
"""%(name,name,age)
print(info2) """
方式三:格式化输出:format
"""
info3="""
=====个人信息三 {_name}=====
姓名:{_name}
年龄:{_age}
""".format(_name=name,_age=age)
print(info3) """
方式四:格式化输出:format
"""
info4="""
=====个人信息四 {0}=====
姓名:{0}
年龄:{1}
""".format(name,age)
print(info4)
输入与输出
姓名:gcl
年龄:23 =====个人信息一 gcl=====
姓名:gcl
年龄:23 =====个人信息二 gcl=====
姓名:gcl
年龄:23 =====个人信息三 gcl=====
姓名:gcl
年龄:23 =====个人信息四 gcl=====
姓名:gcl
年龄:23
结果
6、运算符优先级

7、表达式if...else
# Author:GCL _userName="gcl"
_passWord="" userName=input("用户名:")
passWord=input("密码:") if userName==_userName and passWord==_passWord:
print("欢迎{name}用户".format(name=userName))
else:
print("用户名或密码错误")
If...Else
8、猜年龄游戏
# Author:GCL oldNum=56 # 方式一:while循环
count=0
while count<3:
newNum=int(input("请输入:"))
count+=1
if newNum==oldNum:
print("猜对了!")
break
elif newNum>oldNum:
print("猜大了!")
else:
print("猜小了!")
else:
print("你猜的次数太多了") # 方式二:for循环
for i in range(0,3,1):
newNum = int(input("请输入:"))
if newNum==oldNum:
print("猜对了!")
break
elif newNum>oldNum:
print("猜大了!")
else:
print("猜小了!")
else:
print("你猜的次数太多了")
for与while猜年龄
后记:
这是本人第一次写博客,肯定还存在很多不足的地方,还有很多地方需要提高和改进,欢迎大家的批评。
时间:2018.03.30
Day01:我的Python学习之路的更多相关文章
- python学习之路-day2-pyth基础2
一. 模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,第三方库存放位置:site-packages sys模块简介 导入模块 import sys 3 sys模 ...
- Python学习之路-Day2-Python基础3
Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...
- Python学习之路-Day2-Python基础2
Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...
- Python学习之路-Day1-Python基础
学习python的过程: 在茫茫的编程语言中我选择了python,因为感觉python很强大,能用到很多领域.我自己也学过一些编程语言,比如:C,java,php,html,css等.但是我感觉自己都 ...
- python学习之路网络编程篇(第四篇)
python学习之路网络编程篇(第四篇) 内容待补充
- Python学习之路【第一篇】-Python简介和基础入门
1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...
- python 学习之路开始了
python 学习之路开始了.....记录点点滴滴....
- python学习之路,2018.8.9
python学习之路,2018.8.9, 学习是一个长期坚持的过程,加油吧,少年!
- Python学习之路——pycharm的第一个项目
Python学习之路——pycharm的第一个项目 简介: 上文中已经介绍如何安装Pycharm已经环境变量的配置.现在软件已经安装成功,现在就开始动手做第一个Python项目.第一个“Hello W ...
- python学习之路------你想要的都在这里了
python学习之路------你想要的都在这里了 (根据自己的学习进度后期不断更新哟!!!) 一.python基础 1.python基础--python基本知识.七大数据类型等 2.python基础 ...
随机推荐
- 51nod1014【暴力】
直接暴力1e6就好了 #include <bits/stdc++.h> using namespace std; typedef long long LL; int main() { LL ...
- 3dmax学习资料记录
max2015 官方文档 http://help.autodesk.com/view/3DSMAX/2015/CHS/?guid=GUID-D015E335-EFB3-43BF-AB27-C3CB09 ...
- IT兄弟连 JavaWeb教程 Servlet转发
Servlet对象由Servlet容器创建,并且Servlet对象的service()方法也由容器调用,一个Servlet对象可否直接调用另一个Servlet对象的service()方法呢?答案是否定 ...
- servlet重定向到jsp后样式无法正常显示
原因是在servlet中转发时css和图片的路径变成相对于这个servlet的相对路径而非相对于web项目的路径了. 解决办法:导入css样式和图片时把css写成动态绝对路径, 如用EL表达式表示: ...
- redis的安装(图文详解)
我这里,搭建在 继续
- HTML中div的悬浮标题
<div title="我是鼠标悬停文字">我是一个DIV</div> <div class="diggao" title=&qu ...
- spark序列化及MapOutputTracker解析
本文主要打算对spark内部的序列化机制以及在shuffle map中起衔接作用的MapOutputTracker做一下剖析.主要涉及具体实现原理以及宏观设计的一些思路. 1,spark序列化 任何一 ...
- JavaScript中函数是不能重载原因
以前有一次写JS插件的时候,由于后台写习惯了,妄想在JS中写重载函数,可惜不能成功,原因花了一点时间记了下来 首先要理解重载的含义:函数返回值不同或者形式参数个数不同但函数名相同的函数 JavasSc ...
- Web API 实体显示注释
我看园子里关于Web API的注释都是关于方法的,并没有显示实体注释的方法,今天花了一些时间搞了一下 其实注释的显示就是根据类库的XML文档文件生成的. 首先你要将所用到的类库生成XML文档文件: 在 ...
- 导Excel数据表
需要把EXcel转换格式: