• Python 3 学习笔记(一)----初识Python


    一、Python介绍

    上来就偷个懒,网上有大把的python3介绍,我就不复制粘贴了,哈哈。

    二、Python安装

    Windows:

    首先按装anaconda。anaconda是一个用于科学计算的Python发行版,支持 Linux, Mac, Windows系统,提供了包管理与环境管理的功能,可以很方便地解决多版本python并存、切换以及各种第三方包安装问题。Anaconda利用工具/命令conda来进行package和environment的管理,并且已经包含了Python和相关的配套工具。anaconda下载链接:https://www.continuum.io

    这里先解释下conda、anaconda这些概念的差别。conda可以理解为一个工具,也是一个可执行命令,其核心功能是包管理环境管理。包管理与pip的使用类似,环境管理则允许用户方便地安装不同版本的python并可以快速切换。Anaconda则是一个打包的集合,里面预装好了conda、某个版本的python、众多packages、科学计算工具等等,所以也称为Python的一种发行版。其实还有Miniconda,顾名思义,它只包含最基本的内容——python与conda,以及相关的必须依赖项,对于空间要求严格的用户,Miniconda是一种选择。

    说明一下conda的设计理念——conda将几乎所有的工具、第三方包都当做package对待,甚至包括python和conda自身!因此,conda打破了包管理与环境管理的约束,能非常方便地安装各种版本python、各种package并方便地切换。

    作者:PeterYuan
    链接:http://www.jianshu.com/p/2f3be7781451
     
    之后再按装pycharm(python IDE)。按照安装提示一路安装就可以了,在按装完成后第一次启动程序需要注册激活,激活码可以在网上查找。pycharm下载地址https://www.jetbrains.com/pycharm/ 

    三、Python学习仪式—“Hello World”

    1 #/user/bin/env python
    2 
    3 print("Hello World")

    四、变量/字符编码

    声明变量:

    1 #_*_coding:utf-8_*_
    2 
    3 name = "Irlo"

    上述代码声明了一个变量,变量名为: name,变量name的值为:"Irlo"。在python3中默认使用UTF-8,所以一般无需声明

    变量的定义规则:

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

    变量的命名规则:

    • 变量名要有意义,例如name、age、job等
    • 变量名不要用中文(就算python可以支持中文运行)
    • 不要用拼音(保持高逼格)

    例:跑车哥的女朋友的名字

    1 gf_of_paochege = "Chen rong hua" #python常用下划线
    2 GFOfPaochege = "Chen rong hua" #写windows程序的常用写法,驼峰式

    python没有常量的概念,当你想要表示一个常量的时候用“PIE =”表示

    字符编码:

    ASCII 255 1bytes
      --> 1980 gb2312 7000+
      -->1995 GBK1.0 2w+
      -->2000 GB18030 2.7w+
      -->unicode 2bytes
      -->utf-8 en:1byte,zh:3bytes

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

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

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

    五、注释

    当行注释:#被注释的内容

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

    六、用户输入

    1 username = input("username:")
    2 password = input("password:")
    3 print(username,password)

    基本应用:

     1 name = input("name:")
     2 age = input("age:")
     3 job = input("job:")
     4 salary = input("salary:")
     5 info = ''''
     6 --------info of ''' + name + ''' --------
     7 name:''' + name + '''
     8 age:''' + age + '''
     9 job:''' + job + '''
    10 salary:''' + salary + '''
    11 """
    12 #用'''+'''的方式为字符串拼接,尽量不用,因为使用它会开辟好几块内存,效率低下
     1 name = input("name:")
     2 age = input("age:")
     3 job = input("job:")
     4 salary = input("salary:")
     5 info = """ 6 --------info of %s --------
     7 name:%s
     8 age:%s
     9 job:%s
    10 salary:%s
    11 """% (name,name,age,job,salary)
    12 #%s s代表string(字符)
    13 #%d d代表digit(数字)
    14 #%f f代表float(浮点)
    15     
    16 info2 = '''
    17 ------- info of {name} --------
    18 name:{_name}
    19 age:{_age}
    20 job:{_job}
    21 salary:{_salary}
    22 '''.format(_name=name,
    23  _age=age,
    24  _job=job,
    25  _salary=salary)
    26 print(info2)
    27     
    28 info3 = '''
    29 ------------info of {0} -----------
    30 name:{0}
    31 age:{1}
    32 job:{2}
    33 salary:{3}
    34 '''.format(name,age,job,salary)
    35 print(info3)
    36     

    七、初识模块

    Python的强大之处在于他有非常丰富和强大的标准库和第三方库,几乎你想实现的任何功能都有相应的Python库支持。

    接上用户输入,如果想要在用户输入时让密码呈现密文,可以通过getpass模块来实现,如下:

     1 import getpass
     2 #调用这个模块可使密码呈现密文,但在pycharm中不可用,在其他地方可以使用
     3 
     4 _usename = "irlo"
     5 _password = "142857"
     6 
     7 username = input("usename:")    
     8 password = getpass.getpass("password:")
     9 
    10 if _username = username and _password = password:
    11     print("Welcome user {name} login...".format(name=username))
    12 else:
    13     print("Invalid username or password")
    14 print(name,password)

    八、While循环

    程序执行到while处,“当”条件为True时,就去执行while内部的代码,“当”条件为False时,就跳过。

    例如:

    1 count = 0
    2 While True:
    3     print("循环啊,循环啊",count)
    4     count +=1
    5     if count ==100: #循环100次之后结束
    6         break

    猜数字2.0:

     1 ge_of_Ji = 26
     2 count = 0
     3 while count<3: 
     4     guess_age = int(input("guess age:"))
     5     if guess_age == age_of_Ji:
     6         print("You are right")
     7         break
     8     elif guess_age > age_of_Ji:
     9         print("thinking smaller")
    10     else:
    11         print("thinking bigger")
    12     count = count+1
    13 else:
    14     print("you tried too many times,fuck off!")

    九、For循环

    1 for i in range(1,101):
    2     print("loop",i)
    range(1,101)表示从1开始,到101为止(不包括101),取其中所有的整数。for i in range(1, 101)就是说,把这些数,依次赋值给变量i。相当于一个一个循环过去,第一次i = 1,第二次i = 2,……,直到i = 100。当i = 101时跳出循环。
    1 for i in range(0,10,2) #其中0,10代表范围2代表步长
    2     print("loop",i)  #打印出结果为(0,2,4,6,8)

     猜数字2.1:

     1 age_of_Ji = 26
     2 
     3 for i in range(3):   #计数器,for i in range(3):相当于计数三次
     4     guess_age = int(input("guess age:"))
     5     if guess_age == age_of_Ji:
     6         print("You are right")
     7         break
     8     elif guess_age > age_of_Ji:
     9         print("thinking smaller")
    10     else:
    11         print("thinking bigger")
    12 else:
    13     print("you tried too many times,fuck off!")

    十、Break and Continue判断

    break是结束本次循环

    continue是跳出本次循环,进入下一次循环

    1 for i in range(10):
    2     if i<5:
    3         continue #不往下走了,直接进入下一次loop
    4     print("loop:", i )
  • 相关阅读:
    mass Framework event模块 v9
    关于开源的网络爬虫/网络蜘蛛larbin结构分析
    socketaddr和socketaddr_in的区别于联系
    C语言中.h和.c文件解析
    [原]变参函数原理详解
    fopen和open有什么区别?
    C语言的那些小秘密之变参函数的实现
    c语言中逗号运算符和逗号表达式
    关于REST API设计的一些小经验
    Linux信号说明列表
  • 原文地址:https://www.cnblogs.com/consort/p/7290597.html
Copyright © 2020-2023  润新知