---恢复内容开始---

  1. python文件

    1. 文件开头要有  #!/usr/bin/ python        --在linux中是告诉系统phthon的路径是在/usr/bin/ python目录下,在执行python文件时可以使用 ./文件名  ,如:./h.py  即可执行

    2. 所以python2.7文件开头都需要有 # -*- coding:utf-8 -*- 这句来设置编码格式

    3. 当有中文输出时,常会输出为乱码,这是因为代码是utf-8格式的,但显示终端的编码格式是gbk格式的。如果显示终端的格式是utf-8格式的则会正常显示,但如果是gbk格式的,就显示为乱码了。而utf-8编码与gbk编码同为unicode(万国码)的简化和优化,只是编码方式不一样。要解决中文输出显示乱码的问题,需把utf-8格式先解码成unicode,再以gbk编码,再输出,即可正常显示中文,如下:

      1.   

         # -*- coding:utf-8 -*-
        
         temp = “你好”
        
         #先把utf-8解码为unicode
        
         temp_unicode = tem.decode(‘utf-8’)  #这里的utf-8是指定原来的编码是utf-8编码
        
         temp_gbk = temp_unicode.encode(“gbk”)  #这里的gbk是指定以gbk格式进行编码
        
         print(temp_gbk)
        
         #到了py3中自动转换utf-8 unicode gbk,utf-8可直接编码成gbk
        
         #py3中移除了python的unicode类型
  1. 在cmd命令窗口中输入python可以进入pythod的录入环境,输入exit()即可退出这个编辑环境

  2. 注释

    1. 单行注释,使用 #

    2. 多行注释,使用 “””  多行内容  “””

  3. 导入文件

    1. python为用户提供的 .py 文件

    2. 导入时 使用import 后面写导入文件的名称(不带.py)

    3. 执行程序后会自动生成同名的 .pyc字节码文件,这个就相当于缓存文件

    4. 执行时会优先找 .pyc文件,并执行,如果找不到 .pyc文件,则会去找 .py文件,并执行

  4. 获取输入文本

    1. i1 = raw_input(“Username:  “),获取明文录入的文本

    2. i2 = getpass.getpass(“Password: ”)   (在使用此句前需导入文件 import getpass)

  5. 创建 xxx.py 文件

    1. 建议 文件名、存放路径 都不要有中文

    2. 头部两行的代码较特殊,必须要有

  6. 基本数据类型

    1. 数字: a1 = 123

    2. 字符串: s1 = “abc”  或  s2 = ‘ABC’    或   s3=”””cde”””(三引号中的内容是多行文本字符串)

    3. 布尔值: isAble = true

  7. 流程控制

    1. if

if 条件 :

内容一

内容二

elif 条件 :

内容五

内容六

else :

内容三

内容四

    1. python 是严格按缩进来执行的

    2. 一个等号是赋值,两个等号是比较, != 是不等于

    3. while

while 条件 :

内容一

    1. time.sleep(1)   暂停1秒钟

    2. break,可以跳出整个循环

    3. continue,跳出本次循环,继续下次循环

    4. pass,什么都不做,不可以空着不写,写个pass即可

    5. for循环

s7 = "Return a copy of the string"

 for item in s7:
print item
      1. enumerate()

        1. 接受参数可以是列表

        2. 用于中for循环时自动给列表项生成一列,默认从0开始,自增1

li = ["Computer","iphone","Watch","Car"]

for key,item in enumerate(li):
print(key,item) inp = input("请输入商品:")
inp_num = int(inp)
print(li[inp_num])

------------------------输出-------------------------

(0, 'Computer')

(1, 'iphone')

(2, 'Watch')

(3, 'Car')

请输入商品:0

Computer

    1. 运算符

      1. 算数运算

        1. +  -  *  /  %(取余)  **(幂,返回x的y次幂)  //(取整数,返回商的整数部分)

    py2: 9/2 = 4

    9/2=4.5  (需导入模块,如:from __future__ import division)

    py3:  9/2 = 4.5

      1. PyCharm中设置py文件的模板,给头部添加上固定的两行:file àsetting àEditor àfile and code template àpython script -> 录入固定的两行 àOK

      2. PyCharm中切换py版本,file à settings à project interpreter à 选择版本

      3. 比较运算符: ==  !=  <>  >  <  >=  <=

      4. 赋值运算符: =   +=  -=  *=  /=   %=  **=

      5. ctrl + /  注释快捷键

      6. 逻辑运算符:and  or  not

      7. 成员运算符:  in    not in

      8. 基本数据类型

        1. 数字            int

          1. int类中有__的方法,是有特殊功能的方法

      n1 = 123

      n2 = 456

      print(n1 + n2)  就相当于  print(n1.__add__(n2))

          1. bit_length(),获取可表示的二进制最短位数

      n1 = 4  #00000100

      ret = n1.bet_length()

      print(ret)

        1. 字符串       str

          1. capitalize()方法,首字母大写

          2. center(长度,空白填充字符)方法,把当前字符串显示到中间,空白部分用指定字符替换

          3. count()方法,子序列的个数,指定字符串中当前字符串中重复出现的个数

          4. decode()方法,解码

          5. encode()方法,编码

          6. endswith()方法,[获取字符串里大于等于0的位置,小于2的位置] ,是否以xxx结束

          7. expandtabs()方法,把tab(\t)转换为空格(默认8个空格)

          8. find()方法,查找子序列首次出现的位置,如果没找到,返回-1

          9. format()方法,字符串序列化

      s = "hello {0}, age {1}"
      print(s) s2 = s.format("alex",20)
      print(s2)

      ------------------------输出-------------------------

      hello {0}, age {1}
      hello alex, age 20
          1. index()方法,查找子序列的位置,如果没有找到,报错

          2. int(字符串),把指定字符串转换为数字并返回

          3. isalnum()方法,判断是否同时有字母和数字

          4. isalpha()方法,判断是否都是字母

          5. isdigit()方法,判断是否是数字

          6. islower()方法,判断是否小写

          7. isspace()方法,判断是否是空格

          8. istitle()方法,判断是否是标题(每个单词的首字母大写)

          9. join()方法,连接

      li = ["alex","eric"]
      
      s3 = "_".join(li)
      
      print(s3)
      

       ------------------------输出-------------------------

      alex_eric
          1. ljust()方法,内容做对齐,右侧填充,与center()类似

          2. lower()方法,变小写

          3. len()方法,返回字符串长度

          4. lstrip()方法,移除左侧空白

          5. partition()方法,分割字符串成左中右三部分

          6. split()方法,分割字符串

          7. replace()方法,替换字符串

          8. rfind()方法,从右向左找

          9. rindex()方法,类似于lindex(),只是这里的是从右向左找

          10. rjust()方法,类似于ljust(),方向与ljust()相反

          11. rpartition()方法,与partition()类似,方向与partition()相反

          12. rsplit()方法,与split()方法类似,方向与split()方向相反

          13. rstrip()方法,与lstrip()方法类似,方向与lstrip()方向相反

          14. strip()方法,去除左右两侧的空格

          15. startswith()方法,判断字符串是否以指定字符串开始

          16. swapcase()方法,小写变大写,大写变小写

          17. title()方法,把文本变成标题

          18. upper()方法,把文本转换为大写

          19. 切片

      s6 = "alex"
      print(s6[0:2]) #大于等于左边,小于右边

      ------------------------输出-------------------------

      al

        1. 布尔值       bool

        2. 列表            list

          1. append()方法,追加元素

          2. count()方法,统计某元素有多少个

          3. extend()方法,批量想列表中追加数据

          4. index()方法,获取某个元素的索引

          5. insert()方法,向某个索引处插入元素

          6. pop()方法,把最后一个元素移除,并可以返回被移除的元素

          7. remove()方法,移除某个元素,只移除从左侧找到的第一个

          8. reverse()方法,反转列表

          9. sort()方法,排序列表

          10. del 列表[index] ,删除列表指定索引的元素

        3. 元组            tuple

          1. 元组与列表几乎是一样的,列表可以修改,元组不可以修改

        4. 字典            dict

          1. 字典的每个元素都是一个键值对,有点类似于简单的JSON对象

      user_info = {
      "name":"alex",
      "age":73,
      "gender":"M"
      }
          1. 字典元素的索引就是对应的key字符串

          2. 字典不支持切片

          3. keys()方法,获取字典中的所有key

          4. values()方法,获取字典中所有value

          5. items()方法,获取字典中所有的键值对

          6. for循环

            1. for循环时字典时,默认输出key,即:for k in user_info 等同于 for k in user_info.keys()

            2. 如果要循环出字典的值,则:for v in user_info.values()

            3. 如果要同时循环出字典的键和值,则: for k,v in user_info.items()

          7. clear()方法,清空字典中所有元素

          8. get()方法,根据key获取值,如果key不存在,可以指定一个任意值

          9. haskey()方法,检查字典中指定key是否存在,也可以使用in来代替

          10. pop()方法,获取并中字典中移除

          11. setdefault()方法,如果key不存在,则创建,如果存在,则返回已存在的值且不修改

          12. update()方法,更新,批量把一个字典中的元素更新到另一个后面

          13. del 字典[key],删除字典指定key的元素

        1. range , xrange

          1. range,中py2.7中用于获取指定范围内的数,如range(0,1000000),会一下子把这个范围内的数都创建出来,内存占用会急速上升

          2. xrange,中py2.7中用于获取指定范围内的数,如range(0,1000000),初始时并不创建范围中的数,只有中for循环时才会创建其范围中的一个元素,性能大大提高

          3. 在py3中,没有了xrange,而是range,但其效果于py2.7中的xrange效果一样

          4. range(0,10),获取0~9之间的所有数字,取数范围是大于等于左边的数,小于右边的数

      li = ["Computer","iphone","Watch","Car"]
      
      n = len(li)
      
      for i in range(0,n):
      
          print(i,li[i])
      

      ------------------------输出-------------------------

      (0, 'Computer')

      (1, 'iphone')

      (2, 'Watch')

      (3, 'Car')

        1. 查看对象的类,或对象所具备的功能

          1. type(变量) 函数可以查看变量的数据类型,然后可根据 ctrl+左键,查看内部所有方法

          2. dir(变量),快速查看变量类型的全部方法

          3. help(type(变量)),查看变量类型的详细方法情况

        Python基础语法,基本数据类型及相关操作的更多相关文章

        1. Python基础语法和数据类型最全总结

          摘要:总结了Python最全基础语法和数据类型总结,一文带你学会Python. 本文分享自华为云社区<Python最全基础语法和数据类型总结>,原文作者:北山啦 . 人生苦短,我用Pyth ...

        2. 二.Python基础语法和数据类型

          Python第二节 基础语法和数据类型 Python编码 python3默认情况下源码文件以UTF-8编码, 字符串均为unicode字符串.同时也可以通过# -*- coding: cp-1252 ...

        3. python基础===【字符串】所有相关操作

          #字符串的相关操作 #基本操作 #+ 字符串连接操作 str1 = '来是come走是go' str2 = '点头yes摇头no' result = str1 + str2 print(result) ...

        4. Java基础 变量和数据类型及相关操作

          Java基本语法: 1):Java语言严格区分大小写,好比main和Main是完全不同的概念. 2):一个Java源文件里可以定义多个Java类,但其中最多只能有一个类被定义成public类.若源文件 ...

        5. Python基础语法-基本数据类型

          此文档解决以下问题: 一.Python中数值数据类型——整型(int).浮点型(float).布尔型(bool).复数(complex) 1.float()函数的运用 2.int()函数的运用 3.t ...

        6. 【python基础语法】数据类型:数值、字符串 (第2天课堂笔记)

          """ 数据类型: 一.数值类型:整数 浮点数 布尔值 二.序列类型:字符串.列表 元祖 三.散列类型:字典 集合 可变数据类型: 列表 字典 集合,可以改动内存地址数据 ...

        7. python基础学习一 字符串的相关操作

          python的字符串 在python中,字符串是以unicode编码的,所以python的字符串支持多语言 对于单个字符的编码,python提供了ord()函数获取字符的整数表示,chr()函数是把编 ...

        8. 吾八哥学Python(四):了解Python基础语法(下)

          咱们接着上篇的语法学习,继续了解学习Python基础语法. 数据类型大体上把Python中的数据类型分为如下几类:Number(数字),String(字符串).List(列表).Dictionary( ...

        9. Python基础语法题库

          引言: 语法练习包括Python基础语法.数据类型.字符编码和简单文件操作等内容. 正文(参考答案附录在题目下方): 1.Python 里用来告知解释器跳过当前循环中的剩余语句,然后继续进行下一轮循环 ...

        10. python基础语法(变量与数据类型)

          python基础语法(变量与数据类型) 一.python变量 python中的变量不需要声明.每个变量在使用钱都需要赋值,变量赋值以后,该变量才会被创建 在python中,变量就是变量,它没有类型,我 ...

        随机推荐

        1. 前端一:走进HTML

          一:HTML(HyperText Markup Language)介绍 超文本标记语言,标准通用标记语言下的一个应用.“超文本”就是指页面内可以包含图片.链接,甚至音乐.程序等非文字元素.超文本标记语 ...

        2. SPI机制

          Service Provider Interface 是java的服务提供的发现机制,很多框架中都有用到. 使用这个机制需要做以下几步: 1,在calsspath下见一个目录:META-INF\ser ...

        3. iOS截屏

          - (UIImage *)captureImageFromView:(UIView *)view{ UIGraphicsBeginImageContext(view.bounds.size); CGC ...

        4. 当padding,margin,top为百分比值,具体数值如何计算

          padding以及margin的四个方向设置值为百分数的时候,是以父元素的宽度为基数来进行计算. (为了保持横向和纵向方向上的margin/padding一致,但是其实也不是一定以父元素的宽度为参照物 ...

        5. eclipse Run On Server 异常:could not load the Tomcat Server configuration at Servers\tomcat V5.0 Sertomcat

          eclipse Run On Server 异常:could not load the Tomcat Server configuration at Servers\tomcat V5.0 Serto ...

        6. ActiveMQ的初夜

          Producer Flow Control mq自己实现了Flow Control(流量控制,默认开启),在mq的版本中,4.x和5.x流量控制实现原理并不相同,前者通过 TCP Flow Contr ...

        7. JDBC使用事务实例

          package qddx.JDBC; import java.sql.*; public class useTransaction { public static void main(String[] ...

        8. 深度|OpenAI 首批研究成果聚焦无监督学习,生成模型如何高效的理解世界(附论文)

          本文经机器之心(微信公众号:almosthuman2014)授权转载,禁止二次转载,原文. 选自 Open AI 作者:ANDREJ KARPATHY, PIETER ABBEEL, GREG BRO ...

        9. requestAnimationFrame

          (function() { var lastTime = 0; var vendors = ['webkit', 'moz']; for(var x = 0; x < vendors.lengt ...

        10. struct2的structs.xml文件配置There is no Action mapped for action name 问题

          很久没写过博客,今天重新开始写,新技术太多,只有通过博客才可以不断积累,本人水平有限,如有错误,欢迎指正,谢谢 今天在MAVEN上配置web project的struct2,发现自己忽略了很多问题,再 ...