zoukankan      html  css  js  c++  java
  • 记Python学习

      上周学的Python,感觉有点忘了,现在回顾一下。。。

    一、Python安装及测试https://www.cnblogs.com/weven/p/7252917.html

    例子:

    Python自带的IDEL工具:

    二、安装Pycharmhttps://www.cnblogs.com/dcpeng/p/9031405.html

    玩了一段时间后,想着python应该有像java这样有类似IDEA的工具吧,于是乎。。。安装可能有几个不一样,但大概都可以看出来。

    激活码(好像是这个):https://blog.csdn.net/yournevermore/article/details/90480650

    三、学习基础语法(比如菜鸟教程):https://www.runoob.com/python/python-tutorial.html

    四、不成文的小笔记        

    • python 是一种 动态 解释性 强类型 语言(对动态、解释、强类型的理解,看过一篇文章我感觉写的很好,现在没找到了,难受)
    • 定位是“优雅”、“明确”、“简单”
    • Jyhton
    •    Python的Java实现,Jython会将Python代码动态编译成Java字节码,然后在JVM上运行。
    • 以下关键字不能声明为变量名
    • ['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']
    • 变量名只能是 字母、数字或下划线的任意组合,变量名推荐写法:
    • 驼峰体 MeetTheGirl
    • 下划线 meet_the_girl
    • 在64位机器上int的范围是: -2**63~2**63-1,即-9223372036854775808~9223372036854775807
    • 在Python中,凡是用引号引起来的,全是字符串
    • 在python中,很注重空格格式,要保存统一一致
    • x[:,n]就是取所有集合的第n个数据
    • x[n,:]就是取第n集合的所有数据
    • x[:,m:n],即取所有数据集的第m到n-1列数据
    • readlines() 方法用于读取所有行(直到结束符 EOF)并返回列表
    • strip() #去掉每行头尾空白(在for循环里)
    • mat(矩阵Mat) 好像是把矩阵排成1列
    • pyCharm快捷键(小写的就行):
    • 自动排版Python代码    Ctrl+Alt+L
    • 快速定位到错误行        F2
    • 快速查看最近的修改    Alt+Shift+C

    五、利用pycharm做一些test

    test1

    # -*- coding: utf-8 -*-
    
    age = 12
    age = 12 + 1
    age1 = age + 1
    print(age1)
    
    meet = 1  # 单行注释
    '''
    多
    行
    注
    释
    
    '''
    
    print(3 > 7)
    
    # 字符串的拼接
    S1 = 'a'
    S2 = 'b'
    print(S1 + S2)
    
    # 相乘
    
    
    print(S1 * 8)
    
    # 字符串与数字拼接
    num = 8
    print(S1 + str(num))
    
    # 用户交互,需要注意的是input程序交互获取到的内容是字符串,即使输入的是数字
    name = input("请输入您的用户名:")
    print(name)
    
    # if
    '''
    age = input("请输入您的年龄:")
    if int(age) > 18:
        print("哈哈哈哈")
    
    '''
    
    # while if elif
    
    while True:
        age = input("年:")
        if int(age) >= 22:
            print("啦啦啦")
        elif int(age) >= 18:
            print("哈哈哈")
        elif int(age) < 18:
            print("水水水水")

    控制台:

    test2

    # global 要想给全局变量重新赋值,就要global一下全局变量
    # 定义全局变量
    NAME = ""
    def get_NAME():
        return NAME
    def set_NAME(name):
        global NAME
        NAME = name
        return NAME
    
    print("全局变量1:" + get_NAME())
    
    set_NAME("奥斯")
    
    print("全局变量2:" + get_NAME())
    
    
    # with...as 执行with后的方法后将方法返回值赋值给as后的变量
    
    class Simple:
        def __enter__(self):
            print("enter")
            return "foo"
    
        def __exit__(self, exc_type, exc_val, exc_tb):
            print("exit")
    
    
    def get_simple():
        return Simple()
    
    
    with get_simple() as simple:
        print("我是" + simple)
    
    # 理解lambda
    g = lambda: "lambda test."
    print(g())
    num1 = lambda x, y=1: x + y
    print(num1(1))
    print(num1(10, 10))
    
    # 理解for循环
    x = 'run'
    for i in range(len(x)):
        print(x[i])
    
    # 理解yield
    def test_yield(n):
        for i in range(n):
            yield i * 2  # 每次的运算结果都返回
    
    for j in test_yield(3):
        print(j, ":",)

    控制台:

    test3 (机器学习回归):https://www.cnblogs.com/wing1995/p/4951500.html    ex0.txt

    # coding=utf-8
    
    from numpy import *
    import matplotlib.pyplot as plt
    
    def my_scatter(dataMat):
        x = dataMat[:, 1]
        y = dataMat[:, 2]
        plt.xlabel('x')
        plt.ylabel('y')
        plt.scatter(x.tolist(), y.tolist())
        plt.show()
    
    def file2matrix(filename):
        f = open(filename)
        contents = f.readlines()
        length = len(contents)  # 得到文件内容的行数
        Mat = zeros((length, 3))    # 创建一个空矩阵用于存储文件内容
        index = 0
        for line in contents:
            line = line.strip()     # 去除每一行的换行符
            data = line.split('	')
            Mat[index, :] = data    # 将每一列数据按照行索引存放到空矩阵
            index += 1
        return mat(Mat)
    
    
    data_file = "D:ex0.txt"
    dataMat = file2matrix(data_file)
    my_scatter(dataMat)

    运行情况:

  • 相关阅读:
    关于GaussDB(DWS)的正则表达式知多少?人人都能看得懂的详解来了!
    前端面试常考题:JS垃圾回收机制
    先收藏!关于Java类、接口、枚举的知识点大汇总
    一文带你熟悉Pytorch->Caffe->om模型转换流程
    详解SSH 框架中对象调用流程
    Golang代码测试:一点到面用测试驱动开发
    构建万物可信互联的基石,带你深度剖析区块链跨链的关键技术,满满是干货!
    数据库的两个好帮手:pagehack和pg_xlogdump
    什么是OpenMAX技术分析OpenMAX
    OpenMAX概述
  • 原文地址:https://www.cnblogs.com/yuanmaolin/p/11082979.html
Copyright © 2011-2022 走看看