zoukankan      html  css  js  c++  java
  • Python运算符及基本数据类型

    一.安装Python

    windows:

    1、下载安装包
        https://www.python.org/downloads/
    2、安装
        默认安装路径:C:python27
    3、配置环境变量
        【右键计算机】--》【属性】--》【高级系统设置】--》【高级】--》【环境变量】--》【在第二个内容框中找到 变量名为Path 的一行,双击】 --> 【Python安装目录追加到变值值中,用 ; 分割】
        如:原来的值;C:python27,切记前面有分号

    linux:

    无需安装,原装Python环境,默认版本为2.7。也可重新下载安装。具体安装过程参看:http://www.cnblogs.com/zhangge123/p/6579651.html中作业六的安装过程。

    二.关于Python的特点

      首先Python是一种解释语言,它具有跨平台,开发效率高等优点,但是同时它的运行效率会相对较低,因为它在执行时是在代码编译得到字节码(在Python中就是.pyc文件) ,虚拟机执行字节码并转换成机器码再后在处理器上执行的。常见的解释型语言有:(shell,Python,php,ruby,Java)

      与之对应的编译型,如C,C+,go等,它们运行效率高,通过代码编译得到机器码 ,机器码在处理器上直接执行,每一条指令控制CPU工作,但不能跨平台,开发效率低。

    三.变量

    1、声明变量

    #!/usr/bin/env python
    # -*- coding: utf-8 -*-
     
    name = "zhangge"

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

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

    变量定义的规则:

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

    2、变量的复制

    例   name = "zhangge"

         name1=name

    在这里name与name1都是指向的同一地址,而改地址保存的内容是"zhangge"

    四.关于循环与条件判断

    1.while循环

    死循环:while True:

    结束当前层的循环: break

    结束本次循环:continue

    2.for 循环(也叫遍历)

    常见用法:for i in range()此处range里面加入参数

                   for i in list/dict/str/tuple/set 将这些数据类型的对象的元素进行遍历一遍,并赋值给i

    3.if条件判断

    常见用法:if i in __:  此处下划线可以填写判断的对象

                   if i not in …:

                   if 条件判断:

    注:以上三种均有均可加else语句,其中if还可添加elif,对于while和for的else语句,只有在循环正常结束后(break就是不正常,continue正常),else才会执行。而if是相反的。

    五.运算符

    1.算数运算

    2.比较运算(用以if条件语句中)

    3.赋值运算

    425762-20151025004625020-515390534

    4.逻辑运算

    5.成员运算

    六.基本数据类型

    1、数字

    int(整型)

     在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
     在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807

    关于int的常用方法:

        1.创建   例如:n=123  或 n=int(123)

        2.转变  例: s="123"   m=int(s) 注:int只能转变数字,对于字母或者汉字会报错

        3.功能:bit_length() #查看二进制占用的最小位数 (37).bit_length ==> 6

                   conjugate()  #返回该数字的共轭复数

                   _abs_  #绝对值 _and_ #x&y  _cmp_  #比较大小  _coerce_ #将x,y强制生成一个元组

                   剩余其他功能可在int类中alt+鼠标左键查看。

    2、布尔值

       真或假     1或0   True或False

    3、字符串

    字符串常用功能:移除空白strip()、 分割split()、 长度len()、 索引index()、 切片s[0:2]

       1.创建 s="abc"  s=str("abc")

       2.转换 a=123   s=str(a)   拓展:bytes类型==> 字符串str   s=str(b,encoding="utf8")

          例题:将自己的名字以二进制形式表示出来

    name="张三"
    for i in name:
        print(i)
        bytes_list=bytes(i,encoding="utf8")#utf8一个汉字占三个字节,也可转成GBK,占两个字节
        for j in bytes_list:
            print(bytes_list,bin(j))
    
    #结果为:
    张
    b'xe5xbcxa0' 0b11100101
    b'xe5xbcxa0' 0b10111100
    b'xe5xbcxa0' 0b10100000
    三
    b'xe4xb8x89' 0b11100100
    b'xe4xb8x89' 0b10111000
    b'xe4xb8x89' 0b10001001

       3.其他功能(由于字符串是不可变的,因此它的操作均具有返回值,并且原字符串不改变)

          ① 返回为str类型功能

       S.capitalize() #首字母大写   s.casefold() #大写变小写  s.swapcase(self) # 大写变小写,小写变大写
       s.center(self, width, fillchar=None)#指定字符串长度,使居中,第二个参数为填充内容(可以是"-","","*"等)
       s.ljust(self, width, fillchar=None) #指定长度,左对齐  s.rjust()
       s.zfill(self, width) #指定长度,左侧填充0
       s.strip(self, chars=None)#去除开头结尾的空格,换行符及tab键,
               If chars is given and not None, remove characters in chars instead
       s.upper() s.lower(self) s.strip()
       s.replace(self, old, new, count=None) #count指定替换次数
       s.title(self) #转为标题
       s.expandtabs(self, tabsize=8)#将tab键转换为八个空格 
     ②判断型功能(返回为bool)
       s.endswith(self, suffix, start=None, end=None) #suffix后缀,在此suffix也可以为字符串的元组
       s.startswith(self, prefix, start=None, end=None)
       s.isalnum(self) #判断是否为数字   s.isdecimal(self)  #判断是否为十进制数
       s.isalpha(self) #判断是否为字母   s.digit() #判断是否为数字
       s.isidentifier(self) #判断变量名是否为合法  s.isnumeric() #判断是否为数字(一,壹都可识别)
       s.islower() s.isupper() s.istitle()#每个单词首字母是否大写 s.isspace() s.isprintable()
     ③返回为int类型功能
       s.count(self, sub, start=None, end=None) #sub表示子序列,返回为int
       s.find(self, sub, start=None, end=None)#返回第一个sub的index,若无返回为-1
       s.rfind(self, sub, start=None, end=None)
       s.index(self, sub, start=None, end=None)#同上,但若无,报错
       s.rindex(self, sub, start=None, end=None)
     ④返回为bytes,tuple,list
       encode(self, encoding='utf-8', errors='strict') #编码 返回值为bytes
       s.partition(sep) -> (head, sep, tail) #分割,若sep不存在,则返回(s,"","")
       s.rpartition(self, sep)
       s.rsplit(self, sep=None, maxsplit=-1) #maxsplit指定分割次数,返回列表
       s.split(self, sep=None, maxsplit=-1) # sep如无,则将s转换为列表
       s.splitlines(self, keepends=None)#以换行符分割,返回列表
     ⑤与其他数据类型结合使用的功能   
       s.join(self, iterable) #连接 举例见下
    li=["abc","cmd","hello"]
    s="_".join(li)
    print(s)
     
    #结果:
    #abc_cmd_hello
       s.translate(self, table) 和 s.maketrans(self, *args, **kwargs)
    name="hello_world"
    In = "elordh"
    Out = "@#$%&*"
    trans_table=str.maketrans(In,Out)
    print(name.translate(trans_table))
    
    #结果为:
    #*@##$_w$%#&
       s.format(self, *args, **kwargs) s.format_map(self, mapping)# map 映射
    注:各式数据类型占位符:str(%s),digit(%d),float(%f),%s之间加入数字,可以规定字符串长度,%.4f可规定小数点个数。%s可代替%d。默认右对齐,加-号改为左对齐。下面是关于format用法。
    print("nihao%-10scb"%"ai")
    print("nihao%10scb"%"ai")
    #结果为
    #nihaoai        cb
    #nihao        aicb
    print("hello {0},my age is {1}".format("zhangge",23))
    print("hello {name},my age is {age}.".format(age=23,name="zhangge"))#建议使用,位置可互换
    print("hello {name},my age is {age}.".format_map({"age":23,"name":"zhangge",}))

    未完待续...
  • 相关阅读:
    spring和mybatis整合
    mybatis(二)
    Django-model基础
    用户用户组管理:用户配置文件-组信息文件
    第一章:编译程序概论
    软件包管理:脚本安装包
    软件包管理:源码包管理-源码包安装过程
    软件包管理:源码包管理-源码包与RPM包的区别
    软件包管理:yum在线管理-yum命令
    软件包管理:rpm包管理-yum在线管理-IP地址配置和网络yum源
  • 原文地址:https://www.cnblogs.com/zhangge123/p/6665810.html
Copyright © 2011-2022 走看看