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学习之路的更多相关文章

  1. python学习之路-day2-pyth基础2

    一.        模块初识 Python的强大之处在于他有非常丰富和强大的标准库和第三方库,第三方库存放位置:site-packages sys模块简介 导入模块 import sys 3 sys模 ...

  2. Python学习之路-Day2-Python基础3

    Python学习之路第三天 学习内容: 1.文件操作 2.字符转编码操作 3.函数介绍 4.递归 5.函数式编程 1.文件操作 打印到屏幕 最简单的输出方法是用print语句,你可以给它传递零个或多个 ...

  3. Python学习之路-Day2-Python基础2

    Python学习之路第二天 学习内容: 1.模块初识 2.pyc是什么 3.python数据类型 4.数据运算 5.bytes/str之别 6.列表 7.元组 8.字典 9.字符串常用操作 1.模块初 ...

  4. Python学习之路-Day1-Python基础

    学习python的过程: 在茫茫的编程语言中我选择了python,因为感觉python很强大,能用到很多领域.我自己也学过一些编程语言,比如:C,java,php,html,css等.但是我感觉自己都 ...

  5. python学习之路网络编程篇(第四篇)

    python学习之路网络编程篇(第四篇) 内容待补充

  6. Python学习之路【第一篇】-Python简介和基础入门

    1.Python简介 1.1 Python是什么 相信混迹IT界的很多朋友都知道,Python是近年来最火的一个热点,没有之一.从性质上来讲它和我们熟知的C.java.php等没有什么本质的区别,也是 ...

  7. python 学习之路开始了

    python 学习之路开始了.....记录点点滴滴....

  8. python学习之路,2018.8.9

    python学习之路,2018.8.9, 学习是一个长期坚持的过程,加油吧,少年!

  9. Python学习之路——pycharm的第一个项目

    Python学习之路——pycharm的第一个项目 简介: 上文中已经介绍如何安装Pycharm已经环境变量的配置.现在软件已经安装成功,现在就开始动手做第一个Python项目.第一个“Hello W ...

  10. python学习之路------你想要的都在这里了

    python学习之路------你想要的都在这里了 (根据自己的学习进度后期不断更新哟!!!) 一.python基础 1.python基础--python基本知识.七大数据类型等 2.python基础 ...

随机推荐

  1. 博客图片失效?使用npm工具一次下载/替换所有失效的外链图片

    前言 大约一个月前,微博的图片外链失效了,以及掘金因为盗链问题也于2019/06/06决定开启防盗链,造成的影响是:个人博客网站的引用了这些图片外链都不能显示. 目前微博和掘金的屏蔽,在CSDN和se ...

  2. E20180404-ts

    aero  adj. 航空的,飞行的,飞机的; wheel   n. 轮子; 旋转; Wheels 汽车; 有…轮子的汽车(或自行车等); vi. 转动,旋转; 突然转变方向; foil n. 箔,金 ...

  3. E20170405-gg

    repository n. 存储库,知识库 Permanent adj 永久的 host      n 主机,住处人,主人 authenticate v 使生效,验证 shell n 外壳 commi ...

  4. 一类 O(1) 算法的总结

    这里要注意一下, 一部分 O(1) 算法是需要 \(O(n)\) 或者 \(O(\sqrt n)\) 预处理的... 1. O(1) 求 1~n 的异或和: inline int calc(R int ...

  5. iptables 使用总结

    Linux 系统的防火墙功能是由内核实现的 2.0 版内核中,包过滤机制是 ipfw,管理工具是 ipfwadm 2.2 版内核中,包过滤机制是 ipchain,管理工具是 ipchains 2.4 ...

  6. GCD = XOR(GCD XOR )

    首先没看懂XOR(于是百度了一下):异或,英文为exclusive OR,或缩写成xor.同时还有一个OR,于是一起看了一眼: 大意: 输入一个整数n,在1~n内,有多少对整数(a,b)满足GCD(a ...

  7. spring boot :error querying database. Cause: java.lang.IllegalArgumentException: dataSource or dataSourceClassName or jdbcUrl is required

    配置多个数据源启动报错,error querying database. Cause: java.lang.IllegalArgumentException: dataSource or dataSo ...

  8. 利用VS自带的dotfuscator混淆代码的学习

    对于一些原创的敏感代码,我们可以通过简单的重命名混淆使得别人难以真正理解执行原理.这一点,使用VS自带的dotfuscator即可实现. 如上图所示,你可以自定义选择哪些类被排除重命名,内置的规则中, ...

  9. 爬虫中动态的POST参数

    爬虫的过程中,有的网站提交POST数据时候每次都会带上不懂POST参数,要想爬到数据首先的知道怎么构造这些动态的参数. 1.分析提交POST数据的最原始网页,分析原始网页的源代码,查找里面是否包含有你 ...

  10. .net服务端生成二维码

    mvc4   net4.0 1.引用附件的DLL文件 2.两个函数即可 #region 生成二维码 public ActionResult getQrCode() { using (var ms = ...