美文网首页
无标题文章

无标题文章

作者: 老头子_d0ec | 来源:发表于2018-04-10 19:56 被阅读0次

    python :

                    人生苦短,我用python  ------ Life is short ,you need python. 

    01  注释的作用:

    使用自己熟悉的语言,在程序中对某些代码进行标注说明,增强程序的 可读性

    02 单行注释(行注释)

     以#开头,#右边的所有东西都被当作说名文字,而不是真正要执行的程序,只起到辅助说明作用

    03 多行注释。。。。

     

    算术运算符的基本使用:

    运算符                  描述                  实例     


    +                     加                      a+b=30                          假设变量a为10,变量b为20


    -                             减                     a-b=10           


    *                            乘                       a*b=200


    /                             除                        a/b=0.5


    .......                      .......                      ..........


    **                      幂(最高优先级)

      2.     变量的基本命名和使用:

    变量名只能包含字母、数字和下划线。变量名可以字母或下划线打头,但不能以数字打头,例如:可将变量命名为 message_1 ,但不能将其命名为 1_message ;

     

    变量名不能包含空格,但可使用下划线来分隔其中的单词。例如:变量名 greeting_message 可行,但变量名 greeting message 会引发错误;

     

    不要将 Python 关键字和函数名用作变量名,即不要使用 Python 保留用于特殊用途的单词,如:print 等;

     

    变量名应既简短又具有描述性。例如:name 比 n 好, student_name 比 s_n 好, name_length 比 length_of_persons_name 好;

     

    慎用小写字母 l 和大写字母 O,因为它们可能被人错看成数字 1 和 0

     变量的基本使用:

     

     

  1. 在 Python 中,每个变量 在使用前都必须赋值,变量 赋值以后 该变量 才会被创建
  2. 等号(=)用来给变量赋值
    • = 左边是一个变量名
    • = 右边是存储在变量中的值

     

    message = "Hello Python World!"

     

    print(message)

     

    message = "Hello Python Crash Course World!"

     

    print(message)

     

    运行这个程序,结果如下:

     

     

    Hello Python World!

     

    Hello Python Crash Course World!

     

    3.  变量的类型 :

     

     

  3. 在 Python 中定义变量是 不需要指定类型(在其他很多高级语言中都需要)
  4. 数据类型可以分为 数字型 和 非数字型
  5. 数字型
    • 整型 (int)
    • 浮点型(float)
    • 布尔型(bool)
      • 真 True 非 0 数 —— 非零即真
      • 假 False 0
    • 复数型 (complex)
      • 主要用于科学计算,例如:平面场问题、波动问题、电感电容等问题
  6. 非数字型
    • 字符串
    • 列表
    • 元组
    • 字典
    提示:在 Python 2.x 中,整数 根据保存数值的长度还分为:
    • int(整数)
    • long(长整数)
  7. 使用 type 函数可以查看一个变量的类型
  8.   

  9.  

    标识符.关键字。变量的命名规则:python标识符、命名规则及关键字(含笔记) - CSDN博客

     

     

    变量的输入和输出:

    1.变量

     

    ①.变量的命名规则

     

    语法:  

    (下划线或字母)+(任意数目的字母、数字或下划线)

      变量名必须以下划线或字母开头,而后面接任意数目的字母、数字或下划线。下划线分割。

      区分大小写: SPAM和spam不同

      不能使用python内置关键字,以下关键字不能声明为变量名

    ['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']

     

    命名惯例:

     

       a. 显示  ----通俗易懂   b. nums_of_alex_gf = 19   c. NumsOfAlexGf = 2     ---- 驼峰表示法   d. 5name  -- 数字不能开头 ,但是数字可以结尾与放在中间   例 name5,na5me   e. !name 特殊字符不能有   f. name of teacher = 不能加空格

     

    ②声明变量

     

    1 # !/usr/bin/env python2 # -*- coding:utf-8 -*-3 age = 194 print(age)

     

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

     

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

     

     

     

    2.输入和输出

     

     
    #!/usr/bin/env python# -*- coding: utf-8 -*-  # 将用户输入的内容赋值给 name 变量name = input("请输入用户名:")  # 打印输入的内容print(name)
     

     

     

     

    如果想要不可见,需要利用getpass 模块中的 getpass方法,即:

     

     
     1 #!/usr/bin/env python 2 # -*- coding: utf-8 -*- 3    4 import getpass 5    6 # 将用户输入的内容赋值给 name 变量 7 pwd = getpass.getpass("请输入密码:") 8    9 # 打印输入的内容10 print(pwd)
     

     

     

     

    3.判断语句

     

    语法:

     

    1 if 条件 and 条件2:2     print('True')3 elif 条件:4     print('')5 else:6     print('Flase')

     

    注意缩进,空四格。

     

     
     1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 import getpass 4 Type = input('请输入职业:') 5 if Type == "学生": 6     name = input('请输入用户名') 7     if name == 'hexin': 8         passwd = getpass.getpass('请输入密码:') 9         if passwd == '1234':10             print('验证成功,欢迎登录',name)11 else:12     print('验证失败,再见')
     

     

     

     

    4.循环语句

     

  10. while循环
  11.  

    语法:

     

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

     

    break 跳出整个循环

     

    continue  结束本次循环,开始下一次循环

     

    例:计算1到100的和

     

    i = 1value = 0while i < 101:    i += 1    value = value + iprint(value)

     

    • for循环

    语法:

    for <target> in <object>:      <statements>  else:      <statements>  

    当python运行for循环时,会逐个将序列对象中的元素赋值给目标,然后为每个元素执行循环主体。

    for x in ['spam','eggs','ham']:    print(x,end=  ' ')  

    输出

    spam eggs ham 

    python支持一下几种运算符:

    1.  算数计算符:Python算术运算符示例 - Python教程™

    假设变量a的值是10,变量b的值是21,则 -

     

     

    运算符描述实例+加两个对象相加 a + b 输出结果 30-减得到负数或是一个数减去另一个数 a - b 输出结果 -10*乘两个数相乘或是返回一个被重复若干次的字符串 a * b 输出结果 200/除x除以y b / a 输出结果 2//取整除返回商的整数部分 9//2 输出结果 4 , 9.0//2.0 输出结果 4.0%取余返回除法的余数 b % a 输出结果 0**幂返回x的y次幂 a**b 为10的20次方, 输出结果 100000000000000000000

     

     

    运算符描述示例+加法运算,将运算符两边的操作数增加。a + b = 31-减法运算,将运算符左边的操作数减去右边的操作数。a – b = -11*乘法运算,将运算符两边的操作数相乘a * b = 210/除法运算,用右操作数除左操作数b / a = 2.1%模运算,用右操作数除数左操作数并返回余数b % a = 1**对运算符进行指数(幂)计算a ** b,表示1021次幂//地板除 - 操作数的除法,其结果是删除小数点后的商数。 但如果其中一个操作数为负数,则结果将被保留,即从零(向负无穷大)舍去9//2 = 49.0//2.0 = 4.0, -11//3 =
    -4
    , -11.0//3 = -4.0

     

    2 。比较(关系)运算符:Python比较运算符示例 - Python教程™

    比较(关系)运算符比较它们两边的值,并确定它们之间的关系。它们也称为关系运算符。假设变量a的值10,变量b的值是20,则 -

     

    运算符描述示例==如果两个操作数的值相等,则条件为真。(a == b)求值结果为 false!=如果两个操作数的值不相等,则条件为真。(a != b)求值结果为 true>如果左操作数的值大于右操作数的值,则条件成为真。(a > b)求值结果为 false<如果左操作数的值小于右操作数的值,则条件成为真。(a < b)求值结果为 true>=如果左操作数的值大于或等于右操作数的值,则条件成为真。(a >= b)求值结果为 false<=如果左操作数的值小于或等于右操作数的值,则条件成为真。(a <= b)求值结果为 true

    。。。。。。。。。。。

    。。。。。。。。。。。Python赋值运算符示例 - Python教程™

     

    常用的数据类型转换:

     

     

    函数说明int(x [,base ])将x转换为一个整数long(x [,base ])将x转换为一个长整数float(x )将x转换到一个浮点数complex(real [,imag ])创建一个复数str(x )将对象 x 转换为字符串repr(x )将对象 x 转换为表达式字符串eval(str )用来计算在字符串中的有效Python表达式,并返回一个对象tuple(s )将序列 s 转换为一个元组list(s )将序列 s 转换为一个列表chr(x )将一个整数转换为一个字符unichr(x )将一个整数转换为Unicode字符ord(x )将一个字符转换为它的整数值hex(x )将一个整数转换为一个十六进制字符串oct(x )将一个整数转换为一个八进制字符串

     

    分支语句在开发中的应用场景 分支语句的基本用法:

     Python中条件选择语句的关键字为:if 、elif 、else这三个。其基本形式如下:

     

     
    if condition:    blockelif condition:    block...else:    block
     

     

      其中elif和else语句块是可选的。对于if和elif只有condition为True时,该分支语句才执行,只有当if和所有的elif的condition都为False时,才执行else分支。注意Python中条件选择语句和C中的区别,C语言中condition必须要用括号括起来,在Python中不用,但是要注意condition后面有个冒号。

     

       下面这个是成绩划分等级的一个例子:

     

     
    score=input()if score<60:    print "D"elif score<80:    print "C"elif score<90:    print "B"else:    print "A"
     

     

     二.循环语句

     

      和C语言一样,Python也提供了for循环和while循环(在Python中没有do..while循环)两种。但是Python中的for循环用法和C语言中的大不一样(和Java、C#中的for循环用法类似),while循环用法大致和C语言中的类似。

     

      for循环的基本形式如下:

     

    for variable in list:    block

     

      举个例子,求算从1加到100的和:

     

    sum=0for var in range(1,101):    sum+=varprint sum

     

      range()是一个内置函数,它可以生成某个范围内的数字列表。比如说range(1,6)就会生成[1,2,3,4,5]这样一个列表,而range(8)会生成[0,1,2,3,4,5,6,7]这样一个列表。

     

      当然可以有嵌套循环,比如说有一个列表list=['China','England','America'],要遍历输出每个字母。

     

    list=['China','England','America']for i in range(len(list)):    word=list[i]    for j in range(len(word)):        print word[j]

     

      内置的函数len()不仅可以用来求算字符串的长度也可以用来求列表或者集合中成员的个数。

     

      下面来看一下while循环的基本形式:

     

    while condition:    block

     

      只有当condition为True时,才执行循环。一旦condition为False,循环就终止了。

     

      举个例子:

     

    count=2while count>0:    print "i love python!"    count=count-1

     

      如果想要在语句块过程中终止循环,可以用break或者continue。break是跳出整个循环,而continue是跳出该次循环。

     

    count=5while True:    print "i love python!"    count=count-1    if count==2:        break

     

     
    count=5while count>0:    count=count-1    if count==3:        continue    print "i love python!"        
     

     

      最后加一点,Python中的for和while循环都可以加else子句,else子句在整个循环执行条件不符合时执行(这种用法现在一般用得比较少了)。看两个例子:

     

     
    #这两段循环功能完全相同for i in range(0,10):    print ielse:    print 'over'        for i in range(0,10):    print iprint 'over'
     

     

      下面是while..else的用法:

     

     
    #这两段循环功能完全相同count=5while count>0:    print 'i love python'    count=count-1else:    print 'over'    count=5while count>0:    print 'i love python'    count=count-1print 'over'

     

     

     

    1 比较(即关系)运算符

    python中的比较运算符如下表运算符描述示例==检查两个操作数的值是否相等,如果是则条件变为真。如a=3,b=3则(a == b) 为 true.!=检查两个操作数的值是否相等,如果值不相等,则条件变为真。如a=1,b=3则(a != b) 为 true.<>检查两个操作数的值是否相等,如果值不相等,则条件变为真。如a=1,b=3则(a <> b) 为 true。这个类似于 != 运算符>检查左操作数的值是否大于右操作数的值,如果是,则条件成立。如a=7,b=3则(a > b) 为 true.<检查左操作数的值是否小于右操作数的值,如果是,则条件成立。如a=7,b=3则(a < b) 为 false.>=检查左操作数的值是否大于或等于右操作数的值,如果是,则条件成立。如a=3,b=3则(a >= b) 为 true.<=检查左操作数的值是否小于或等于右操作数的值,如果是,则条件成立。如a=3,b=3则(a <= b) 为 true.


    2 逻辑运算符

    运算符逻辑表达式描述实例andx and y布尔"与" - 如果 x 为 False,x and y 返回 False,否则它返回 y 的计算值。(a and b) 返回 20。orx or y布尔"或" - 如果 x 是 True,它返回 True,否则它返回 y 的计算值。(a or b) 返回 10。n、otnot x布尔"非" - 如果 x 为 True,返回 False 。如果 x 为 False,它返回 True。not(a and b) 返回 False

    python 中的循环用法:

    for循环、while循环  

     

     

    Python中有两种循环,分别为:for循环和while循环。

    1. for循环

    for循环可以用来遍历某一对象(遍历:通俗点说,就是把这个循环中的第一个元素到最后一个元素依次访问一次)。for循环的基本结构如下:

    具体看这个案例:

    设计一个函数,在桌面创建10个文本,用数字从1-10依次给它们命名。

     
     1 def text_create(): 2     path = '/Users/duwangdan/Desktop/' 3     for text_name in range(1,11): 4         # 1-10的范围需要用到range函数 5         with open (path + str(text_name) + '.txt','w') as text: 6             # with...as的用法正文内会详细介绍 7             text.write(str(text_name)) 8             text.close() 9             print('Done')10 11 text_create()
     

    现在我们来理解下每行代码。

    第1行:定义一个text_create函数;

    第2行:给变量path赋值为桌面路径;

    第3行:将1-10范围内的每个数字依次装入变量text_name中,每次命名一个文件;

    第5行:打开位于桌面的txt文件,并给每一个text执行写入操作;

    第7行:给每个文件依次命名;

    第8行:关闭文件;

    第9行:执行完一次命名操作后显示一个Done;

    第11行:调用函数。

    案例中提到了“with...as”,在Python中,“with...as”语法是用来代替传统的“try...finally”的。

    比如:打开桌面的test文件,尝试读取文件内容,最后关闭文件。

    1 file = open('/Users/duwangdan/Desktop/test.txt')2 try:3     data = file.read()4 finally:5     file.close()

    虽然这段代码执行良好,但比较冗长,换成用“with...as”来表达后,代码会更为简洁。

    1 with open('/Users/duwangdan/Desktop/test.txt') as file:2     data = file.read()

    除了上面的单层循环之外,还有一种常见的循环,是嵌套循环

    比如用嵌套循环实现九九乘法口诀。

    1 for i in range(1,10):2     for j in range(1,10):3         print('{} X {} = {}'.format(i,j,i*j))

    最外层的循环,依次将1-9的数字储存在变量i中;变量i每取一次值,内层循环就依次将1-9的数字储存在变量j中;最后打印出当前的i、j、和i*j的值。

    从Python2.6开始,新增了format函数,用来格式化字符串,可以通过{}.format来实现。在上面这个案例中,将i、j、i*j的值分别存入前面的{ }中,然后做好格式化,统一形式。

    2. while循环

    for循环和while循环,两者的相同点在于都能循环做一件重复的事情;不同点在于,for循环是在序列穷尽时停止,while循环是在条件不成立时停止。

    具体,看下面这个例子:

    1 count = 02 while True:3     print('重复一遍')4     count = count + 15     if count == 3:6         break

    给变量count赋值为0,while True就是条件成立,显示“重复一遍”,此时count被重新赋值为count+1,如果count等于3时,跳出循环。最后一句的break是跳出最近一层的循环,如果不跳出,程序会无限制循环下去,造成死循环。

    如果不想用break来跳出循环,也可以改变使循环成立的条件。

    将上面的例子可转化为如下:

    1 count = 02 while (count < 3):3     print('重复一遍')4     count = count + 1

     

     

    1. break

    <1> for循环

    普通的循环示例如下:

    name = 'dongGe'
      for x in name:       print('----')       print(x)
     

    带有break的循环示例如下:
     
    name = 'dongGe'
      for x in name:       print('----')       if x == 'g':           break       print(x)

    <2> while循环

    普通的循环示例如下:

     
    i = 0
      while i<10:       i = i+1       print('----')       print(i)

    带有break的循环示例如下:


      i = 0
      while i<10:       i = i+1       print('----')       if i==5:           break       print(i)
    小总结:
    • break的作用:用来结束整个循环


    2. continue

    <1> for循环

    带有continue的循环示例如下:

      name = 'dongGe'
      for x in name:       print('----')       if x == 'g':           continue       print(x)

    <2> while循环

    带有continue的循环示例如下:

      i = 0
      while i<10:       i = i+1       print('----')       if i==5:           continue       print(i)

     

    python中的字符串 列表 字典

     

     

     

    字符串
         一个有序的字符集合  不可变

        1,可以使用for in语句进行迭代循环,返回元素
        2,in类是于str.find()方法但是是返回布尔结果
            str.find()返回的是位置
    操作
        查找字符串:
            find 找不到返回-1
            rfind    从右边
            index    报错      都是从左边开始查找
            rindex   从右边
        统计字符串个数
            count
        替换字符串
            replace       原字符串不变
        切割
            split         不包含隔开符,切割为一个列表
            splitslines   按换行符去隔开
            partition     包含隔开符
            partition
        首字母
            capitaize     第一个位 首字母 大写
            title         所有单词首字母
        大小写变换    
             upper
            lower
        判断开头结尾
            startswith
            endswith
        对齐
            ljust
            rjust
            center
        删除空白符
            lstrip     左边
            rstrip     右边
            strip      两边
        判断字符串的组成
            isalpha    全为字母
            isdigit    全为数子
            isalnum    全为字母或数字
            isspace    全为空格
     
        将列表转换为字符串
            join  
                   L=['s','p','a','n']
               例如: S=".join(L)
                      s='span'
            
    列表操作    lisst[0] =值
     操作
        增加
            append        在后面追加   原处修改,返回值None
            extend      两个集合合并
            insert      某 个位置插入
        修改 =下标位修改
        
        查找
            in           查找元素是否在列表中 判断
            not in       true=false
            index       返回元素的下标位
            count       统计元素的次数
        删除元素
            del         根据下标位删除
            pop         默认删除,并返回最后一个元素  
            remove      删除内容
        排序
            sort       原处修改,返回值None  保证元素类型相同 计较默认升序 reverse=True 倒叙   
            reverse     降序==[::-1]
        
    元组()
        里面的元素不能修改
        可以按下标访问元素
        内置函数==count
                  index

    字典{} 使用键值存储==key-value,且键不能重复 没有顺序=下标 具有快速查询
      操作
               dit【key】=values
        修改
            通过key修改
        添加
            通过key添加,如果存在就修改,不存在就添加
        删除元素
            del
            clean =不会立刻清理内存
    常见函数
        len()
            字典中的键值个数
        keys()
            返回key列表
        values()
            返回values列表
        items()    
            返回键值的元组
        has_key()  == in
            判断键是否在字典中

     

     

     

     

     

     

     

     

     

    如有字符串mystr = ‘hello wo shi zui shuai de ren  jiu shi wo',以下是常见的操作

    一、find

    检测 str 是否包含在 mystr中,如果是返回开始的索引值,否则返回-1 mystr.find(str, start=0, end=len(mystr))

    二、index

    跟find()方法一样,只不过如果str不在 mystr中会报一个异常. mystr.index(str, start=0, end=len(mystr))

    三、count

    返回 str在start和end之间 在 mystr里面出现的次数 mystr.count(str, start=0, end=len(mystr))

    四、replace

    把 mystr 中的 str1 替换成 str2,如果 count 指定,则替换不超过 count 次. mystr.replace(str1, str2,  mystr.count(str1))

    五、split

    以 str 为分隔符切片 mystr,如果 maxsplit有指定值,则仅分隔 maxsplit 个子字符串 mystr.split(str=" ", 2)   

    六、capitalize

    把字符串的第一个字符大写 mystr.capitalize()

    七、title

    把字符串的每个单词首字母大写 mister.title()

    八、startswith

    检查字符串是否是以 obj 开头, 是则返回 True,否则返回 False mystr.startswith(obj)

    九、endswith

    检查字符串是否以obj结束,如果是返回True,否则返回 False. mystr.endswith(obj)

    十、lower

    转换 mystr 中所有大写字符为小写 mystr.lower()       

    十一、upper

    转换 mystr 中的小写字母为大写 mystr.upper()   

    十二、ljust

    返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串 mystr.ljust(width)

    十三、rjust

    返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串 mystr.rjust(width)   

    十四、center

    返回一个原字符串居中,并使用空格填充至长度 width 的新字符串 mystr.center(width)  

    十五、lstrip

    删除 mystr 左边的空白字符 mystr.lstrip()

    十六、rstrip

    删除 mystr 字符串末尾的空白字符 mystr.rstrip()   

    十七、strip

    删除mystr字符串两端的空白字符 mister.strip()

    十八、partition

    把mystr以str分割成三部分,str前,str和str后 mystr.partition(str)

    十九、rpartition

    类似于 partition()函数,不过是从右边开始. mystr.rpartition(str)

    二十、splitlines

    按照行分隔,返回一个包含各行作为元素的列表 mystr.splitlines() 

    二十一、isalpha

    如果 mystr 所有字符都是字母 则返回 True,否则返回 False mystr.isalpha() 

    二十二、isdigit

    如果 mystr 只包含数字则返回 True 否则返回 False. mystr.isdigit()

    二十三、isalnum

    如果 mystr 所有字符都是字母或数字则返回 True,否则返回 False mystr.isalnum() 

    二十四、isspace

    如果 mystr 中只包含空格,则返回 True,否则返回 False. mystr.isspace()  

    二十五、join

    mystr 中每个字符后面插入str,构造出一个新的字符串 mystr.join(str)


     

     

    相关文章

      网友评论

          本文标题:无标题文章

          本文链接:https://www.haomeiwen.com/subject/iuuacftx.html