Python学习第〇篇-主要概念及示例

Posted carbs_wang

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python学习第〇篇-主要概念及示例相关的知识,希望对你有一定的参考价值。

前言

今天开始学习Python,争取每天一篇学习笔记。为保持与python风格一致,笔记中的语言尽量简洁。

1.总括:

  1. python的语法与javascript相似,均为解释执行语言。
  2. python可以使用如jython解释器,使得python可以在java虚拟机上运行。
  3. python具有面向对象的特性,同时又没有保护类型、接口、抽象等特性。
  4. 跨平台

2.语法:

  1. 大小写敏感,代码块使用tab键或者空格进行分割代码。
  2. 保留字:

    and           表达式运算,逻辑与
    as            类型转换
    asset         断言,判断变量或条件表达式是否为真
    break         中断循环语句
    class         定义类
    continue      继续下一轮循环
    def           定义函数/方法
    del           删除变量或序列的值 
    elif          与if else结合使用
    else          条件语句
    except        except包含捕获异常后的操作代码块,与try、finally结合使用
    exec          执行python语句
    for           for循环
    finally       异常后始终要执行的语句
    from          用于导入模块,与import结合使用
    global        定义全局变量
    if            条件语句
    import        用于导入模块,与from结合使用   
    in            判断变量是否在序列中
    is            判断变量是否是某个类的实例
    lambda        匿名定义函数
    not           逻辑非
    or            逻辑或
    pass          空的类、方法或函数的占位符
    print         打印语句(3.0版本以上使用print())
    raise         异常抛出操作
    return        函数返回结算结果
    try           包含可能出异常的代码,与except、finally结合使用
    while         循环语句 
    with          简化python的语句
    yield         从函数依次返回值
    
  3. 变量不需要声明

  4. 强类型语言,变量赋值后即确定了数据类型。

3. 实践

1.打印keyword

>>> from keyword import kwlist
>>> print(kwlist)
['False', 'None', 'True', 'and', 'as', 'assert', 'break', 'class', 'continue', 'def', 'del', 'elif', 'else', 'except', 'finally', 'for', 'from', 'global', 'if', 'import', 'in', 'is', 'lambda', 'nonlocal', 'not', 'or', 'pass', 'raise', 'return', 'try', 'while', 'with', 'yield']

2.执行一个py文件。
2.1. 将python.exe所在目录路径加入环境变量。
2.2. 新建文件helloworld.py,内容:

if __name__ == "__main__":
  print("hello world")

2.3. cmd下,输入python 路径\\helloworld.py
2.4. 输出:hello world
2.5. 说明:
2.5.1. 函数是按照缩进来确定范围的,定义的函数中可以有空行。
2.5.2. if name == “main“:为python中的主函数,相当于C语言中的main()
2.5.3. 如果不添加主函数,那么此处print()函数需要定格写。
2.5.4. 需要保持缩进的统一,如缩进都是空格,需要均使用空格,如果都是tab,则均使用tab

源码阅读:

这是Github上一个关于使用python脚本删除android系统中apk的程序,其功能包含:列举/删除apk。所有源码如下:


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

# 引入os包
import os;

# 删除所有你指定包名的 APP
# 定义函数
def delAllapp( ):
    # 打印,3.x版本使用print()函数进行打印
    print 'start delete all your app in your Phone or Simulator '
    # popen是os的一个函数,其“返回值”是一个打开的文件对象,该文件对象里面是系统命令的“输出”
    os.popen('adb wait-for-device');
    # 3.x版本的raw_input()函数已经取消了,需要使用input()函数
    corename = raw_input("input your app package corename:")
    oriPackages = os.popen('adb shell pm list packages name'.format(name=corename));

    for oriPackage in oriPackages:

        deletePackage = oriPackage.split(':')[1]
        os.popen('adb uninstall ' + deletePackage );
        print deletePackage + "is deleted"


# 删除所有你指定包名的特定 APP
def listAllpackage( ):

    i = 0
    os.popen('adb wait-for-device');
    corename = raw_input("input your app package corename:")
    oriPackages = os.popen('adb shell pm list packages name'.format(name=corename));

    for oriPackage in oriPackages:

        deletePackage = oriPackage.split(':')[1]
        print str(i) + ":" + deletePackage
        deleteList.append(deletePackage)
        i += 1

def deleteApp(number):
    os.popen('adb uninstall ' + deleteList[number] );
    print 'delete '+ deleteList[number] + "success"

#主函数程序入口
if __name__ == '__main__':

    delAllapp()
    ```
    another fun here
    ```
    #deleteList = []
    #listAllpackage()
    #number = raw_input("input the number of app you want to delete:")
    #deleteApp(int(number))

整个文件围绕着os.popen()函数展开,通过接受用户输入以及用户输出,达到删除某一/多个app的目的。

参考:
《Python开发技术详解》
https://github.com/wuchangfeng/Automatic-unistall-App

以上是关于Python学习第〇篇-主要概念及示例的主要内容,如果未能解决你的问题,请参考以下文章

深度学习4. 单层感知机概念及Python实现

day-6 机器学习概念及应用

Linux学习第四节课-文件管理基本概念及相关部分指令

Vue 开发实战生态篇 # 17:Vuex核心概念及底层原理

Linux学习第三节课-指令基本概念及部分指令用法

Python中常用的函数概念及功能