一、第一句Python代码

1、在d:/test_py目录下新建一个test.py文件,并在其中写上如下内容:

print("Hello World")

2、在cmd命令行下执行test.py文件

***python内部执行过程如下:

二、解释器

上一步中执行 python /home/dev/hello.py 时,明确的指出 hello.py 脚本由 python 解释器来执行。

如果想要类似于执行shell脚本一样执行python脚本,例: ./hello.py ,那么就需要在 hello.py 文件的头部指定解释器,如下:

 #!/usr/bin/env python

 print "hello,world"

如此一来,执行: ./hello.py 即可。

ps:执行前需给予 hello.py 执行权限,chmod 755 hello.py

三、内容编码

python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill)

ASCII(American Standard Code for Information Interchange,美国标准信息交换代码)是基于拉丁字母的一套电脑编码系统,主要用于显示现代英语和其他西欧语言,其最多只能用 8 位来表示(一个字节),即:2**8 = 256,所以,ASCII码最多只能表示 256 个符号。

显然ASCII码无法将世界上的各种文字和符号全部表示,所以,就需要新出一种可以代表所有字符和符号的编码,即:Unicode

Unicode(统一码、万国码、单一码)是一种在计算机上使用的字符编码。Unicode 是为了解决传统的字符编码方案的局限而产生的,它为每种语言中的每个字符设定了统一并且唯一的二进制编码,规定虽有的字符和符号最少由 16 位来表示(2个字节),即:2 **16 = 65536,
注:此处说的的是最少2个字节,可能更多

UTF-8,是对Unicode编码的压缩和优化,他不再使用最少使用2个字节,而是将所有的字符和符号进行分类:ascii码中的内容用1个字节保存、欧洲的字符用2个字节保存,东亚的字符用3个字节保存...

所以,python解释器在加载 .py 文件中的代码时,会对内容进行编码(默认ascill),如果是如下代码的话:

报错:ascii码无法表示中文

 #!/usr/bin/env python

 print "你好,世界"

改正:应该显示的告诉python解释器,用什么编码来执行源代码,即:

 #!/usr/bin/env python
 # -*- coding: utf-8 -*-

 print "你好,世界"

***注意:在python3中,如果想要表示中文字符,就可以不用添加-*- coding: utf-8 -*- 也能正常显示中文

四、注释

当行注视:# 被注释内容

多行注释:""" 被注释内容 """

五、执行脚本传入参数

Python有大量的模块,从而使得开发Python程序非常简洁。类库有包括三中:

  • Python内部提供的模块
  • 业内开源的模块
  • 程序员自己开发的模块

Python内部提供一个 sys 的模块,其中的 sys.argv 用来捕获执行python脚本时传入的参数

 #!/usr/bin/env python
 # -*- coding: utf-8 -*-

 import sys

 print sys.argv 

六、 pyc 文件

执行Python代码时,如果导入了其他的 .py 文件,那么,执行过程中会自动生成一个与其同名的 .pyc 文件,该文件就是Python解释器编译之后产生的字节码。

ps:代码经过编译可以产生字节码;字节码通过反编译也可以得到代码。

七、变量

1、声明变量

 name = "test"

上述代码声明了一个变量,变量名为: name,变量name的值为:"test"

变量的作用:昵称,其代指内存里某个地址中保存的内容

变量定义的规则:

  • 变量名只能是 字母、数字或下划线的任意组合
  • 变量名的第一个字符不能是数字
  • 以下关键字不能声明为变量名
    ['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']

2、变量的赋值

 #!/usr/bin/env python

 name1 = "test"
 name2 = "apple"

 #!/usr/bin/env python

 name1 = "wupeiqi"
 name2 = name1

八、输入

#!/usr/bin/env python

# 将用户输入的内容赋值给 name 变量
name = input("请输入用户名:")
# 打印输入的内容 

print(name)

执行结果如下:

九、流程控制和缩进

需求一、用户登陆验证

 #!/usr/bin/env python

 # 提示输入用户名和密码

 # 验证用户名和密码
 #     如果错误,则输出用户名或密码错误
 #     如果成功,则输出 欢迎,XXX!

 name = input('请输入用户名:')
 pwd = input('请输入密码:')

 if name == "alex" and pwd == "cmd":
     print("欢迎,alex!")
 else:
     print("用户名和密码错误")

执行结果:

 需求二、根据用户输入内容输出其权限

# 根据用户输入内容打印其权限

# alex --> 超级管理员
# eric --> 普通管理员
# tony,rain --> 业务主管
# 其他 --> 普通用户
name = input('请输入用户名:')

if name == "alex":    print("超级管理员")elif name == "eric":    print("普通管理员")elif name == "tony" or name == "rain":    print("业务主管")else:    print("普通用户")

执行结果:

十、while循环

 while 条件:

     # 循环体

     # 如果条件为真,那么循环体则执行
     # 如果条件为假,那么循环体不执行

--break:break用于退出所有循环

while True:
    "
    break
    "

--continue:continue用于退出当前循环,继续下一次循环

 while True:
     "
     continue
     "

练习题

1、使用while循环输出 1 2 3 4 5 6  8 9 10

--根据题目可以直到1-10这十个数不输出7,代码如下:

 # 定义变量用来表示1-10这10个数

 num = 1

 while num <= 10:
     if num == 7:
         pass
     else:
         print(num)
     num += 1

2、求1-100的所有数的和

代码如下:

 # 求1-100的所有数的和
 # 定义一个变量用来表示这100个书
 num = 0
 sum = 0
 # 利用while循环让100个数累加
 while num < 100:
     num += 1
     sum = sum + num
 print(sum)

3、输出 1-100 内的所有奇数

--奇数的特性就是➗2余1,也就是余数不等于0,代码如下:

 num = 0
 while num <= 100:
     if 0 == num % 2:
         pass
     else:
         print(num)
     num += 1

4、输出 1-100 内的所有偶数

代码如下:

 num = 1
 while num <= 100:
     if 0 == num % 2:
         print(num)
     else:
         pass
     num += 1

5、求1-2+3-4+5 ... 99的所有数的和

# 求1-2+3-4+5 ... +99的所有数的和
num = 0
sum1 = 0
sum2 = 0
while num < 100:
    if 0 == num % 2:
        sum1 = num + sum1
    else:
        sum2 = num + sum2
    num += 1
rel = sum2 - sum1
print(rel)

6、用户登陆(三次机会重试)

 # count用来计数
 count = 0
 while count < 3:
     user = input("请输入账号>>>")
     pwd = input("请输入密码>>>")
     if "test" == user and "password" == pwd:
         print("登陆成功")
         break
     else:
         print("登陆失败,请重新输入")
     count += 1

python学习之python入门的更多相关文章

  1. python学习笔记--Django入门四 管理站点--二

    接上一节  python学习笔记--Django入门四 管理站点 设置字段可选 编辑Book模块在email字段上加上blank=True,指定email字段为可选,代码如下: class Autho ...

  2. Python学习day09 - Python进阶(3)

    figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...

  3. Python学习day05 - Python基础(3) 格式化输出和基本运算符

    figure:last-child { margin-bottom: 0.5rem; } #write ol, #write ul { position: relative; } img { max- ...

  4. python学习路线--从入门到入土

    入门技术博客 进阶自己挑选 入门基础 Python入门相对容易又可以干很多事(网站,运维,数据,爬虫等),是一门方便的工具语言.2016年TIOBE排名显示Python已经名列第四,成为脚本语言之首. ...

  5. python学习——简介和入门

    一.Python简介: Python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为AB ...

  6. python学习笔记--Django入门0 安装dangjo

    经过这几天的折腾,经历了Django的各种报错,翻译的内容虽然不错,但是与实际的版本有差别,会出现各种奇葩的错误.现在终于找到了解决方法:查看英文原版内容:http://djangobook.com/ ...

  7. python学习笔记-python程序运行

    小白初学python,写下自己的一些想法.大神请忽略. 安装python编辑器,并配置环境(见http://www.cnblogs.com/lynn-li/p/5885001.html中 python ...

  8. python学习: 优秀Python学习资源收集汇总--转

    Python是一种面向对象.直译式计算机程序设计语言.它的语法简捷和清晰,尽量使用无异义的英语单词,与其它大多数程序设计语言使用大括号不一样,它使用縮进来定义语句块.与Scheme.Ruby.Perl ...

  9. Python学习笔记—Python基础1 介绍、发展史、安装、基本语法

    第一周学习笔记: 一.Python介绍      1.Python的创始人为吉多·范罗苏姆.1989年的圣诞节期间,吉多·范罗苏姆为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言 ...

  10. Python学习之Python简介

    Python简介 Python的由来 Python(英国发音:/ˈpaɪθən/ 美国发音:/ˈpaɪθɑːn/), 是一种面向对象.解释型计算机程序设计语言,它是吉多·范罗苏姆(Guide van ...

随机推荐

  1. 【 PostgreSQL】工作中常用SQL语句干货

    接触gp数据库近一年的时间,语法上和其他数据库还是有些许不同,工作中常用的操作语句分享给大家! -- 建表语句 create table ods.ods_b_bill_m ( acct_month t ...

  2. eclipse直接使用tomcat安装程序的webapp目录调试

    感谢此文:http://blog.csdn.net/soszou/article/details/23673133 本文很多技术及操作来源于此文 需求:因为微信方面的开发调试.为了测试方便,直接构建了 ...

  3. HomeBrew 使用国内数据源

    使用中科大源 1.替换默认源 替换USTC镜像: cd "$(brew --repo)" git remote set-url origin https://mirrors.ust ...

  4. Java集合框架中的快速失败(fail—fast)机制

      fail-fast机制,即快速失败机制,是java集合框架中的一种错误检测机制.多线程下用迭代器遍历一个集合对象时,如果遍历过程中对集合对象的内容进行了修改(增加.删除),则会抛出Concurre ...

  5. Kali-linux攻击路由器

    前面介绍的各种工具,都是通过直接破解密码,来连接到无线网络.由于在一个无线网络环境的所有设备中,路由器是最重要的设备之一.通常用户为了保护路由器的安全,通常会设置一个比较复杂的密码.甚至一些用户可能会 ...

  6. selenium + python自动化测试unittest框架学习(三)webdriver元素定位(一)

    1.Webdriver原理 webdirver是一款web自动化操作工具,为浏览器提供统一的webdriver接口,由client也就是我们的测试脚本提交请求,remote server浏览器进行响应 ...

  7. linux下批量重命名文件

    # 使用通配符批量创建 多个文件:$ touch zqunor{1..7}.txt # 批量将多个后缀为 .txt 的文本文件重命名为以 .c 为后缀的文件:$ rename 's/\.txt/\.c ...

  8. Maven创建Web项目、、、整合SSM框架

    自己接触ssm框架有一段时间了,从最早的接触新版ITOO项目的(SSM/H+Dobbu zk),再到自己近期来学习到的<淘淘商城>一个ssm框架的电商项目.用过,但是还真的没有自己搭建过, ...

  9. MongoDB简易

    一   安装 1.下载 $ brew install mongodb 2.启动 $ mongod --config /usr/local/etc/mongod.conf 3.连接 $ mongo 二 ...

  10. iOS:位置相关(18-03-09更)

    1.定位设置 2.定位页面逻辑 1.定位设置 2.定位页面逻辑 1).第一次进入该VC,在 viewDidLoad 调用刷新页面 refreshLocationView .这时用户还没决定,会刷出“正 ...