• [python小白]菜鸟教程---


    pycharm竟然是idea大家族里面的,汉化之后不知道比my、eclipse高明到哪里去了。https://blog.csdn.net/pingfangx/article/details/78826155(汉化教程))

    #coding:utf-8 (不过我的一开始就很支持中文哎...

    一、基本语法
    (1)基本知识
    print "hello world"
    py3.0一般就是print("hello,word!")
    -d 在解析时显示调试信息
    -O 生成优化代码 ( .pyo 文件 )
    -S 启动时不引入查找Python路径的位置
    中文输出: Python中默认的编码格式是 ASCII 格式
    解决方法为只要在文件开头加入 # -*- coding: UTF-8 -*- 或者 #coding=utf-8 就行了
    注意: = 号两边不要空格。

    #!/usr/bin/python
    #coding=utf-8
    Python 中的标识符是区分大小写的。
    以下划线开头的标识符是有特殊意义的。以单下划线开头 _foo 的代表不能直接访问的类属性,需通过类提供的接口进行访问,不能用 from xxx import * 而导入;
    以双下划线开头的 __foo 代表类的私有成员;以双下划线开头和结尾的 __foo__ 代表 Python 里特殊方法专用的标识,如 __init__() 代表类的构造函数。
    Python 可以同一行显示多条语句,方法是用分号 ;
    >>> print 'hello';print 'runoob';
    hello
    runoob
    (2)缩进
    学习 Python 与其他语言最大的区别就是,Python 的代码块不使用大括号 {} 来控制类,函数以及其他逻辑判断。python 最具特色的就是用缩进来写模块。
    缩进的空白数量是可变的,但是所有代码块语句必须包含相同的缩进空白数量,这个必须严格执行。

    IndentationError: unindent does not match any outer indentation level错误表明,你使用的缩进方式不一致,有的是 tab 键缩进,有的是空格缩进,改为一致即可。
    如果是 IndentationError: unexpected indent 错误, 则 python 编译器是在告诉你"Hi,老兄,你的文件里格式不对了,可能是tab和空格没对齐的问题",所有 python 对格式要求非常严格。
    建议你在每个缩进层次使用 单个制表符 或 两个空格 或 四个空格 , 切记不能混用
    (4)注释和输出
    可以使用斜杠( )将一行的语句分为多行显示,语句中包含 [], {} 或 () 括号就不需要使用多行连接符。
    引号( ' )、双引号( " )、三引号( ''' 或 """ ) 来表示字符串。
    python中单行注释采用 # 开头。
    '''
    这是多行注释,使用单引号。
    '''
    print 默认输出是换行的,如果要实现不换行需要在变量末尾加上逗号 ,
    (5)
    缩进相同的一组语句构成一个代码块,我们称之代码组。

    像if、while、def和class这样的复合语句,首行以关键字开始,以冒号( : )结束
    二、python变量类型
    Python 中的变量赋值不需要类型声明。
    每个变量在使用前都必须赋值,变量赋值以后该变量才会被创建。
    (用=)
    a = b = c = 1
    a, b, c = 1, 2, "john"都可以
    Numbers(数字)
    String(字符串)
    List(列表)
    Tuple(元组)
    Dictionary(字典)
    (1)字符串
    如果你要实现从字符串中获取一段子字符串的话,可以使用 [头下标:尾下标] 来截取相应的字符串,其中下标是从 0 开始算起,可以是正数或负数,下标可以为空表示取到头或尾。

    [头下标:尾下标] 获取的子字符串包含头下标的字符,但不包含尾下标的字符。【左闭右开】
    加号(+)是字符串连接运算符,星号(*)是重复操作。如下实例:print str * 2 # 输出字符串两次
    【实例】
    str = 'Hello World!'

    print str # 输出完整字符串
    print str[0] # 【【输出字符串中的第一个字符】】
    print str[2:5] # 输出字符串中第三个至第五个之间的字符串(不包含第五个。因此这里有2 3 4 一共3个
    print str[2:] # 输出从第三个字符开始的字符串
    print str * 2 # 输出字符串两次
    print str + "TEST" # 输出连接的字符串

    (2)列表
    列表用 [ ] 标识,是 python 最通用的复合数据类型。
    列表中值的切割也可以用到变量 [头下标:尾下标] ,就可以截取相应的列表,从左到右索引默认 0 开始。
    下标可以为空表示取到头或尾。

    (3)元组
    元组是另一个数据类型,类似于List(列表)。
    元组用"()"标识。内部元素用逗号隔开。但是元组不能二次赋值,相当于只读列表。
    以下是元组无效的,因为元组是不允许更新的。而列表是允许更新的:

    (4)字典
    字典(dictionary)是除列表以外python之中最灵活的内置数据结构类型。列表是有序的对象集合,字典是无序的对象集合。
    两者之间的区别在于:字典当中的元素是通过键来存取的,而不是通过偏移存取。
    字典用"{ }"标识。字典由索引(key)和它对应的值value组成。

    实例(Python 2.0+)
    #!/usr/bin/python
    # -*- coding: UTF-8 -*-

    dict = {}
    dict['one'] = "This is one"
    dict[2] = "This is two"

    tinydict = {'name': 'john','code':6734, 'dept': 'sales'}

    print dict['one'] # 输出键为'one' 的值
    print dict[2] # 输出键为 2 的值
    print tinydict # 输出完整的字典
    print tinydict.keys() # 输出所有键
    print tinydict.values() # 输出所有值

    输出结果为:

    This is one
    This is two
    {'dept': 'sales', 'code': 6734, 'name': 'john'}
    ['dept', 'code', 'name']
    ['sales', 6734, 'john']
    (5)类型转换
    str(x)将对象 x 转换为字符串
    int(x [,base])将x转换为一个整数
    base -- 进制数,默认十进制
    eval(str)用来计算在字符串中的有效Python表达式,并返回一个对象
    tuple(s)将序列 s 转换为一个元组
    list(s)将序列 s 转换为一个列表
    dict(d)创建一个字典。d 必须是一个序列 (key,value)元组。
    chr(x)将一个整数转换为一个字符
    unichr(x)将一个整数转换为Unicode字符
    ord(x)将一个字符转换为它的整数值

    >>> int('12',16) # 如果是带参数base的话,12要以字符串的形式进行输入,12 为 16进制
    18
    >>> int('0xa',16)
    10
    >>> int('10',8)
    8
    这个貌似是, 括号里的意思是十几进制的意思,也就是12 是16进制的12所以是18

     四、运算符
    (1)+ - * / %
    **是幂  返回x的y次幂
    //取整数  向下取整

    (2)Python2.x 里,整数除整数,只能得出整数。如果要得到小数部分,把其中一个数改成浮点数即可。
    也就是1.0/2或者1/float(2)

    (3)!=是不等的意思, 同时也是<>
    (4)%=和//=以及**=都是一样的
    (5)位运算
    &   a
    |^
    ~
    <<
    >>
    (6)逻辑运算符!!!!

    (7)in // a in list  a not in list

    is (==是判断是否值相等,is 是是否引用的一个对象) is not

    六 条件语句
    elif  就是else if
    用严格的缩进区分
    0或者null为false
    由于 python 并不支持 switch 语句,所以多个条件判断,只能用 elif 来实现,如果判断需要多个条件需同时判断时,可以使用 or (或),表示两个条件有一个成立时判断条件成功;使用 and (与)时,表示只有两个条件同时成立的情况下,判断条件才成功。
    【记得if后面要有":"  for也是】



    流畅的pythoon阅读笔记 鸭子切片原理

    实际应用:

    使用IDLE打开,python shell运行

    然后要输入! import

    然后就是缩进︿( ̄︶ ̄)︿非常重要

    (应该也没啥。直接在那里打开就行。。)

    唔...  感觉太难用了 ,我就去下了pycharom

    简直完美啊,再也没有报错过!!

    第一个程序参考了菜鸟教程(本篇都是参考菜鸟教程)  http://www.runoob.com/w3cnote/prints-diamonds-triangles-rectangles.html (py打印简单的三角形)

    #coding:utf-8
    rows=int(raw_input('请输入变量'))
    i=j=k=1
    #等腰直角三角形:
    print "world begins"
    for i in range(0,rows):
        for j in range(0,rows-i):
            print " * ",
            j+=1
        i+=1
        print "
    "
    
    #空心正方形
    print "空心正方形"
    for i in range (0,rows): #区间似乎是左闭右开 所以...
        for k in range(0,rows):
            if i!=0 and i!=rows -1:# 中间的行的控制
                if k==0 or k==rows-1:# 边缘的控制
                    print " * ",
                else:
                    print "   ",
            else:
                print " * ",
            k+=1
        i+=1
        print "
    "
    View Code

     然后这里呢,要特别注意“,” 不然 就去换行了

    还有for i in range (..)

        i+=1 (一般是这样的格式哦)

     【继续学一下 有关"循环"】

    七 循环语句

    1.for循环
    (1)字符串
    for letter in 'Python':     # 第一个实例
       print '当前字母 :', letter
    (2)数组
    fruits = ['banana', 'apple',  'mango']
    for fruit in fruits:        # 第二个实例
       print '当前水果 :', fruit
    或者索引:
    for index in range(len(fruits)):
       print '当前水果 :', fruits[index]
    函数 len() 返回列表的长度,即元素的个数。 range返回一个序列的数。

    2.循环使用else语句
    在 python 中,for … else 表示这样的意思,for 中的语句和普通的没有区别,else 中的语句会在循环正常执行完(即 for 不是通过 break 跳出而中断的)的情况下执行,while … else 也是一样。
    【也就是,如果else没和if对齐而是和for对奇了,就相当于是一个bool设置xxx的例子。】

    3.while用法大致相同
    break 来跳过循环,continue 用于跳过该次循环,break 则是用于退出循环
    【可以使用 CTRL+C 来中断(无限)循环】
    while … else 在循环条件为 false 时执行 else 语句块:(else和while对其的时候)
    如果你的 while 循环体中只有一条语句,你可以将该语句与while写在同一行中。

    4.补充
    & (严格,与,都满足) | (不严格,或,有一个就诊) ^(异或) <<(左边弯加,右边弯假)
    【只能用elif哦!。。】

    八  python数字
    Python pass是空语句,是为了保持程序结构的完整性。
    占据一个位置,因为如果定义一个空函数程序会报错,当你没有想好函数的内容是可以用 pass 填充,使程序可以正常运行。
    【就像分号  ;一样】
    chr(x )                 将一个整数转换为一个字符  
    hex(x )                 将一个整数转换为一个十六进制字符串  

    (还有类似许多,http://www.runoob.com/python/python-numbers.html 基本是想变成什么就叫什么名字吧(当然了) 以及加了.0才认得你是浮点数
    import math  / cmath(包含复数 i... )

    abs(x)  ceil(x)  exp(x) #e的x次幂  用法math.exp(1)
    log(x)      math.log(100,10)  2.0
    log10(x)  math.log10(100)   2.0
    pow(x,y)  x的y次方啊!!!!
    round(x,[,n]) 私车五日,后面是小数点位数
    这些都有

    随机数函数 (很重要,但是还不知道用法)
    常量:pi  e

  • 相关阅读:
    Android stadio 插件推荐--ok gradle
    算法:枚举法---kotlin
    Kotlin 二分法算法游戏--猜价格
    android onCreate的两个方法
    Spring 中的scope
    Intellij IDEA 2017 debug断点调试技巧与总结详解篇
    深入浅出ConcurrentHashMap1.8
    ConcurrentHashMap JDK1.8
    synchronized修饰普通方法和静态方法
    Java多线程系列--CopyOnWriteArraySet
  • 原文地址:https://www.cnblogs.com/lx2331/p/9869057.html
Copyright © 2020-2023  润新知