---恢复内容开始---

本博客主要记录学习Python的过程(按照金角大王老师课程学习),整理所学知识,扎实基础。如有错误,望批评指正。

1.Python所擅长的领域

  Python是一门解释型语言,主要擅长的领域如以及对应的框架如下:

   (1) Web开发

    Django/pyramid/Tornado/Bottle/Flash/WebPy

  (2) 网络编程

    Twisted/Requests/Scrapy/Paramiko

    (3) 科学计算

    SciPy/Pandas/Ipython

    (4) GUI图形开发

    wxPython/PyQT/Kivy

    (5) 运维自动化

    OpenStack/SaltStack/Ansible/腾讯蓝鲸

2.字符编码

  在计算机中,所有的数据都是以0101的形式存储在计算机中,0和1不同的组合可以组合出不同的数字,所以数字在计算机中存储较为方便。

  那么如何存储字符呢?

  就需要为字符赋予一定的数字,计算机存储数字,根据数字的值就可以知道所对应的字符,这就是ASCII码表。在ASCII码表中,使用7或8位来表示128或256个字符。所有的字符加起来总共是128个,后128个是扩展ASCII码。用于其他语言的扩展。

  ASCII码表可以完美的表示英文字符,但不能支持中文,那么如何让计算机存储中文呢?需要重新定义一套编码规则,

  1980年我国相关组织提出GB2312编码,共收录6763个汉字

  1995年,又提出GBK编码,共收录21003个汉字(兼容GB2312)

  2000年,提出GB18030编码,支持更多的汉字,包括少数民族文字等(兼容GBK)

  各个国家都在提出不同的编码,为了避免不同国家多个编码的存在,相关组织就提出了一种可以代表所有字符和符号的编码,即Unicode

  Unicode编码中中文需要占用两个字节,所以在Unicode编码中 英文、中文统一用两个字节表示,对于英文字符来说占用的空间比较大。

  为了解决这个问题,出现了UTF-8编码。

  UTF8是一个可变长的编码方式,如果使用英文,占用一个字节。如果使用中文,占用三个字节。

  Python3相比较python2的变化是默认使用的是utf-8编码,如果python2中使用中文,需要在代码中声明使用的编码

3.第一个Python程序

  学习一门语言,Hello World是入门最好的程序:

print("Hello World!")

  在Pycharm中输入上述代码,在控制台即可输出“Hello World!”结果。

4.Python中的变量

  Python是要给弱类型的语言,其对变量的定义没有明确类型的声明。

  使用变量的例子如下:

value = "Hello World!"
print(value)

  输出结果如下:

5.Python中的注释

  在Python中的注释方式:

  1.单行注释,使用“#”用于单行注释  例: #注释内容

  2.多行注释,使用三个单引号括住  或者 三个双引号括住 进行注释  例:'''注释内容'''   或者 """注释内容"""

  注:多行注释的三个单引号或三个双引号注释  也可用来定义多行字符串变量,如下所示:

value = '''Hello World!
世界你好'''

6.格式化输出

  按照一定的格式输出结果,在Python中有如下三个方式

  (1)字符串拼接

name = "张三"
age = ""
sex = "男"
info = name + '''个人信息
name:'''+ name + '''
age:''' + age + '''
sex''' + sex
print(info)

   输出结果:

  (2)占位符

name = "张三"
age = ""
sex = "男"
info = '''%s个人信息
name:%s
age:%s
sex:%s'''%(name,name,age,sex)
print(info)

  输出结果和上述相同

  占位符%s表示的是字符串,也有其他的类型,如%d整数等。

  (3)format两种格式

    a.定义变量

name = "张三"
age = ""
sex = "男"
info = '''{_name}个人信息
name:{_name}
age:{_age}
sex:{_sex}'''.format(_name=name,_age=age,_sex=sex)
print(info)

  输出结果与上述相同。该方式需要在字符串中定义变量,然后在format方法中完成变量和值的绑定。

    b.定义位置下标

name = "张三"
age = ""
sex = "男"
info = '''{0}个人信息
name:{0}
age:{1}
sex:{2}'''.format(name,age,sex)
print(info)

  该种方式可读行较差。

Python格式化输出一般采用format的第一种形式。

7.input的方法说明

  程序一般要与用户进行交互,即可以接收用户的输入,在Python中input方法用来接收用户的输入。

name = input("name:")
print(name)

输出结果

input方法在Python3中默认输入的类型是str,但有的时候需要使用其他类型,如年龄,这个时候需要强制类型转换

age = int(input("age:"))

  注:这块与Python是弱类型语言并不冲突,age并没有明确的类型定义,这里需要强制转换是因为在使用age的时候是按照整型来使用的。

8.if ..else语法

  if和else语法见代码:

name = input("name:")

if name == "张三":
print("你是%s"%(name))
elif name == "李四":
print("你是{_name}".format(_name=name))
else:
print("不欢迎你!")
   print("这里也是else条件要执行的")

  if else 语句中要有冒号,且有严格的缩进,缩进不同,代码级别不同

9.while 语法

  见代码:

my_age = 27
count = 1;
while count < 3: guess_age = int (input("age:") ) #input在python中默认输入的是字符串str,这里需要强制转换成int if guess_age == my_age :
print("you are right!")
break
elif guess_age > my_age :
print("think smaller!")
else :
print("think bigger!")
count += 1
else :
print("you have tried too times")

while后面可以使用else.

10.for语法

  见代码:

for i in range(10):
print("循环:",i)

  上述代码会一次打印出0-9的值

range中还有步长参数,如要输出0-10中所有的偶数,只需设定步长是2即可

for i in range(0,10,2):
print("循环:",i)

  输出结果:

注:for和while都可以后面跟一个else,当正常执行完时,可以执行else,若通过break终止循环时,不执行else

11.其他

  Python中如何输入密文?

  需要引入getpass模块

    引入模块的方式:import getpass

    使用模块的中输入方法可以密文输入密码:

  具体代码:

import getpass
password = getpass.getpass("password:")
print(password)

  在cmd中测试结果如下:

getpass在pycharm中存在bug,所以在命令行中演示。

下面是一个猜数游戏,游戏本身并不完整,主要是练习所学知识。

import random   #导入随机数模块

number = random.randint(0,100)    #被猜的数字
count = 0
result = False
while count < 3:
_num = int(input("请输入数字:")) #input默认是str类型,转换成int类型
if _num > number :
print("猜大了")
elif _num < number :
print("猜小了")
else :
print("猜对了")
result = True
count += 1
if count == 3 or result :
choose = input("游戏结束!!!是否继续?")
if choose == "n":
break
count = 0

---恢复内容结束---

Python学习一:基础语法的更多相关文章

  1. Python学习①. 基础语法

    Python 简介 Python 是一种解释型,面向对象的语言.特点是语法简单,可跨平台 Python 基础语法 交互式编程 交互式编程不需要创建脚本文件,是通过 Python 解释器的交互模式进来编 ...

  2. python学习之基础语法

    一.缩进 学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断.python 最具特色的就是用缩进来写模块. 缩进的空白数量是可变的, ...

  3. Python学习笔记——基础语法篇

    一.Python初识(IDE环境及基本语法,Spyder快捷方式) Python是一种解释型.面向对象.动态数据类型的高级程序设计语言,没有编译过程,可移植,可嵌入,可扩展. IDE 1.检查Pyth ...

  4. python学习笔记--基础语法

    等待用户输入 #!/usr/bin/python raw_input("\n\nPress the enter key to exit.") 简单的判断 #!/usr/bin/py ...

  5. Python学习之--基础语法

    一.定义 Python 是一种解释型.面向对象.动态数据类型的高级程序设计语言. 二.Python变量的命名规则 1. 变量名只能包含字母.数字和下划线: 2. 变量名不能包含空格: 3. 不要将Py ...

  6. Python学习入门基础教程(learning Python)--5.6 Python读文件操作高级

    前文5.2节和5.4节分别就Python下读文件操作做了基础性讲述和提升性介绍,但是仍有些问题,比如在5.4节里涉及到一个多次读文件的问题,实际上我们还没有完全阐述完毕,下面这个图片的问题在哪呢? 问 ...

  7. Python入门篇-基础语法

    Python入门篇-基础语法 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.编程基础 1>.程序 一组能让计算机识别和执行的指令. 程序 >.算法+ 数据结构= 程 ...

  8. JavaScript学习02 基础语法

    JavaScript学习02 基础语法 JavaScript中很多基础内容和Java中大体上基本一样,所以不需要再单独重复讲了,包括: 各种算术运算符.比较运算符.逻辑运算符: if else语句.s ...

  9. Python学习笔记基础篇——总览

    Python初识与简介[开篇] Python学习笔记——基础篇[第一周]——变量与赋值.用户交互.条件判断.循环控制.数据类型.文本操作 Python学习笔记——基础篇[第二周]——解释器.字符串.列 ...

  10. Python:笔记(1)——基础语法

    Python:笔记(1)——基础语法 我很抱歉有半年没有在博客园写过笔记了,客观因素有一些,但主观原因居多,再多的谴责和批判也都于事无补,我们能做的就是重振旗鼓,继续出发! ——写在Python之前 ...

随机推荐

  1. 网络端口地址转换的NAPT配置

    背景:只有一个IP地址,实现内网内多台主机访问外网 原理:NAPT使用不同的端口来映射对各内网的IP地址到一个指定的外网IP地址,多对一. NAPT采用端口多路复用的方式.内部网络的所有主机均可共享一 ...

  2. 51Nod 1182 完美字符串(字符串处理 贪心 Facebook Hacker Cup选拔)

    1182 完美字符串             题目来源:                         Facebook Hacker Cup选拔         基准时间限制:1 秒 空间限制:1 ...

  3. HDU1465-装错信封-递推

    不容易系列之一 Time Limit: 2000/1000 MS (Java/Others)    Memory Limit: 65536/32768 K (Java/Others)Total Sub ...

  4. VS2012 TFS解决离职后代码遗留未迁入问题

    第一步: 在命令行中输入 C:\Program Files (x86)\Microsoft Visual Studio 12.0\Common7\IDE 第二步: 根据用户查找该用户下workspac ...

  5. 来说说datatype

    今天敲代码一直卡在一个问题上面好久那就是--datatype的未定义,起初不晓得datatype的含义,遇到这种情况首先想到的就是自己又忘记加上面头文件了.随即写了个stdlib.h上去.可是问题并没 ...

  6. maven(01)--安装及其介绍

    1:下载maven windows下载 2:将下载文件夹解压,然后放在一个安装目录(可任意选择),例如就放在D盘的根目录 然后在设置环境变量,新建一个环境变量,名称为M2_HOME,其设置值为mave ...

  7. 安装Ruby、Sass与Compass

    sass基于Ruby语言开发而成,因此安装sass前需要安装Ruby.(注:mac下自带Ruby无需在安装Ruby!) window下安装SASS首先需要安装Ruby,先从官网下载Ruby并安装.安装 ...

  8. 人人都是CEO

    在这个互联网崛起的时代有些流行说法,比如:人人都是产品经理,人人都是程序员以突显行业繁荣的特点,但从更基本的出发点,难道人人不都是 CEO 么?个人的 CEO. 从这个名字套路出发,我沿着想了下去,作 ...

  9. 《HelloGitHub》第 22 期

    公告 年前最后一期,下次就是年后了,老时间 每月的 28 号,年后见- <HelloGitHub>第 22 期 兴趣是最好的老师,HelloGitHub 就是帮你找到兴趣! 简介 分享 G ...

  10. mysql中能够使用索引的典型场景

    mysql 演示数据库:http://downloads.mysql.com/docs/sakila-db.zip 匹配全值 explain select * from rental where re ...