python基础学习总结day01

pythonday01

  • python学习第一天总结
    • 1.环境搭建
      • a)anaconda环境配置
      • b)解释器
    • 2.python初体验
      • a)print and input
    • 3.python基础讲解
      • a)python变量特性+命名规则
      • b)注释方法
      • c)python中的": "作用
      • d)学会使用dir()及和help()
      • e)import
      • f) pep8介绍
    • 4.python数值基础知识
      • a)python中的数值类型,int,float,bool,e计数法等
      • b)算数运算符
      • c)逻辑运算符
      • d)成员运算符
      • e)身份运算符
      • f)运算符优先级

python学习第一天总结

1.环境搭建

a)anaconda环境配置

anacodnda是什么?为什么要用anaconda?以及怎么安装?
Anaconda 是一个可用于科学计算的 Python 发行版,支持 Linux、Mac、Windows系统,内置了常用的科学计算包。它解决了官方 Python 的两大痛点。

  1. 第一:提供了包管理功能,Windows 平台安装第三方包经常失败的场景得以解决。
  2. 第二:提供环境管理的功能,功能类似 Virtualenv,解决了多版本Python并存、切换的问题。

anaconda安装过程 —我是按照百度的anaconda安装的。

b)解释器

一个用编译性语言比如C或C++写的程序可以从源文件(即C或C++语言)转换到一个你的计算机使用的语言(二进制代码,即0和1)。这个过程通过编译器和不同的标记、选项完成。当你运行你的程序的时候,连接/转载器软件把你的程序从硬盘复制到内存中并且运行。而Python语言写的程序不需要编译成二进制代码。你可以直接从源代码运行程序。
在计算机内部,Python解释器把源代码转换成称为字节码的中间形式,然后再把它翻译成计算机使用的机器语言并运行。事实上,由于你不再需要担心如何编译程序,如何确保连接转载正确的库等等,所有这一切使得使用Python更加简单。由于你只需要把你的Python程序拷贝到另外一台计算机上,它就可以工作了,这也使得你的Python程序更加易于移植。
Python的解释器如今有多个语言实现,我们常用的是CPython(官方版本的C语言实现),其他还有Jython(可以运行在Java平台)、IronPython(可以运行在.NET和Mono平台)、PyPy(Python实现的,支持JIT即时编译)

2.python初体验

a)print and input

password = raw_input("请输入密码:")
print ('您刚刚输入的密码是:', password)

1).

  1. raw_input()的小括号中放入的是,提示信息,用来在获取数据之前给用户的一个简单提示
  2. raw_input()会把用户输入的任何值都作为字符串来对待
  3. input()接受表达式输入,并把表达式的结果赋值给等号左边的变量
a = input('please input name')
print(a)

报错:
python基础学习总结day01_第1张图片将zhangsan赋值给了a,若想输出zhangsan字符串用Python2时需加’zhangsan’
2).python3中

  1. 没有raw_input()函数,只有input()
  2. 并且 python3中的input与python2中的raw_input()功能一样
  3. print(“I’m %(name)s. I’m %(age)d year old” % {‘name’:‘Vamei’, ‘age’:99})
格式符号 转换
%c 字符
%s 通过str() 字符串转换来格式化
%i 有符号十进制整数
%d 有符号十进制整数
%u 无符号十进制整数
%o 八进制整数
%x 十六进制整数(小写字母)
%X 十六进制整数(大写字母)
%e 索引符号(小写’e’)
%E 索引符号(大写“E”)
%f 浮点实数
%g %f和%e 的简写
%G %f和%E的简写

3.python基础讲解

a)python变量特性+命名规则

变量 , 其实就是计算机内存中的一块储存空间 , 用来存储CPU需要使用的数据 ,而这个储存空间需要一个名字 , 这个名字的统称就叫变量 。
问:怎样知道一个变量的类型呢?

  1. 在python中,只要定义了一个变量,而且它有数据,那么它的类型就已经确定了,不需要咱们开发者主动的去说明它的类型,系统会自动辨别
  2. 可以使用type(变量的名字),来查看变量的类型

google的python的命名规范:

命名样式 命名类型
module_name 模块
package_name
ClassName
method_name, 方法
ExceptionName 异常
function_name 函数
GLOBAL_VAR_NAME 全局变量
instance_var_name 实例
function_parameter_name 参数
local_var_name 本变量

命名规则:
小驼峰式命名法(lower camel case): 第一个单词以小写字母开始;第二个单词的首字母大写,例如:myName、aDog
大驼峰式命名法(upper camel case): 每一个单字的首字母都采用大写字母,例如:FirstName、LastName
不过在程序员中还有一种命名法比较流行,就是用下划线“_”来连接所有的单词,比如send_buf
3. 类
总是使用首字母大写单词串。如MyClass。内部类可以使用额外的前导下划线。
4. 函数&方法
小写+下划线
注意:混合大小写仅被允许用于这种风格已经占据优势的时候,以便保持向后兼容。
5. 函数和方法的参数
如果一个函数的参数名称和保留的关键字冲突,通常使用一个后缀下划线
6. 全局变量
对于from M import *导入语句,如果想阻止导入模块内的全局变量可以使用旧有的规范,在全局变量上加一个前导的下划线。
注意:应避免使用全局变量
7. 变量
小写,由下划线连接各个单词。如color = WHITE,this_is_a_variable = 1
注意
1.不论是类成员变量还是全局变量,均不使用 m 或 g 前缀。
2.私有类成员使用单一下划线前缀标识。
3.变量名不应带有类型信息,因为Python是动态类型语言。如 iValue、names_list、dict_obj 等都是不好的命名。
8. 常量
常量名所有字母大写,由下划线连接各个单词如MAX_OVERFLOW,TOTAL。
9. 异常
以“Error”作为后缀。
文件名
全小写,可使用下划线
10. 包
应该是简短的、小写的名字。如果下划线可以改善可读性可以加入。如mypackage。
11. 模块
与包的规范同。如mymodule。
12. 缩写
命名应当尽量使用全拼写的单词,缩写的情况有如下两种:
1.常用的缩写,如XML、ID等,在命名时也应只大写首字母,如XmlParser。
2.命名中含有长单词,对某个单词进行缩写。这时应使用约定成俗的缩写方式。
例如:
function 缩写为 fn
text 缩写为 txt
object 缩写为 obj
count 缩写为 cnt
number 缩写为 num,等。
13. 前导后缀下划线
一个前导下划线:表示非公有。
一个后缀下划线:避免关键字冲突。
两个前导下划线:当命名一个类属性引起名称冲突时使用。
两个前导和后缀下划线:“魔”(有特殊用图)对象或者属性,例如__init__或者__file__。绝对不要创造这样的名字,而只是使用它们。
注意:关于下划线的使用存在一些争议。
14. 特定命名方式
主要是指 xxx 形式的系统保留字命名法。项目中也可以使用这种命名,它的意义在于这种形式的变量是只读的,这种形式的类成员函数尽量不要重载。如
class Base(object):
def init(self, id, parent = None):
self.id = id
self.parent = parent
def message(self, msgid):
其中 idparentmessage 都采用了系统保留字命名法。

b)注释方法

1.Python中的注释有单行注释和多行注释:

  1. #单行注释
  2. ‘’’
    单引号多行注释
    ‘’’
  3. “”"
    双引号多行注释
    “”"

2.pycharm中同时注释多行代码快捷键:
代码选中的条件下,同时按住 Ctrl+/,被选中行被注释,再次按下Ctrl+/,注释被取消

c)python中的": "作用

1)字典中的key,value。person={name:‘张三’}
列表中list[start : end : step]start:起始位置,end:结束位置,step:步长。
元组中tup2 = (1, 2, 3, 4, 5, 6, 7 )print "tup2[1:5]: ", tup2[1:5]
2)python语法中没有括号限定子模块的范围,用冒号:表示子模块的开始。有缩紧tab表示语法块。(类,方法,if,esle,while,for等)

d)学会使用dir()及和help()

dir() 函数不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表。如果参数包含方法__dir__(),该方法将被调用。如果参数不包含__dir__(),该方法将最大限度地收集参数信息。
help()函数,相对于dir()函数,不光有属性,还多了属性介绍。
4. 查看python所有的关键字:help(“keywords”)
5. 查看python所有的modules:help(“modules”)
6. 单看python所有的modules中包含指定字符串的modules: help(“modules yourstr”)
7. 查看python中常见的topics: help(“topics”)
8. 查看python标准库中的module:import os.path + help(“os.path”)
9. 查看python内置的类型:help(“list”)
10. 查看python类型的成员方法:help(“str.find”)
11. 查看python内置函数:help(“open”)

e)import

1)可以使用import将一个源文件导入,并可以使用该模块的方法。可以单个模块导入,也可以同时导入多个模块,还可以导入模块的部分方法。

  1. import queryengine#导入一个模块
  2. import os,sys#导入多个模块(不推荐使用)
    import sys
    sys.path

2)sys.path.append(’…/…/bole_untils’)#可以确保先搜索这个路径,一般是导入自己的工具包时常用。
3)import queryengine as qe #添加别名,方便使用
4)这种格式用于大型的模块,可以只导入需要的方法即可。from_future_import division

f) pep8介绍

pep8是python的编码规范。主要对代码编排,文档编排,空格使用、注释、文档描述、命名规范以及编码建议等。在写程序时如果都遵循这个规则,很大程度提升了代码的可阅读性。
Python PEP8 编码规范中文版
python基础学习总结day01_第2张图片
代码不符合PEP8规范的,在PyCharm中,不符合规范的代码下面会有波浪线提示。那么有没有办法快速格式化代码使之符合PEP8规范呢?
在pycharm中用ctrl+alt+l对文件自动整理为pep8编码格式。

4.python数值基础知识

a)python中的数值类型,int,float,bool,e计数法等

int是整型
float是浮点型
bool True Flase
c = 10e2=1000.0(e计数法是浮点数)
a = 10+6j = complex(10,6)

b)算数运算符

运算符 描述 实例
& 按位与运算符:参与运算的两个值,如果两个相应位都为1,则该位的结果为1,否则为0 (a & b) 输出结果 12 ,二进制解释: 0000 1100
| 按位或运算符:只要对应的二个二进位有一个为1时,结果位就为1 (a | b) 输出结果 61 ,二进制解释: 0011 1101
^ 按位异或运算符:当两对应的二进位相异时,结果为1 (a ^ b) 输出结果 49 ,二进制解释: 0011 0001
~ 按位取反运算符:对数据的每个二进制位取反,即把1变为0,把0变为1 。~x 类似于 -x-1 (~a ) 输出结果 -61 ,二进制解释: 1100 0011,在一个有符号二进制数的补码形式。
<< 左移动运算符:运算数的各二进位全部左移若干位,由 << 右边的数字指定了移动的位数,高位丢弃,低位补0。 a << 2 输出结果 240 ,二进制解释: 1111 0000
>> 右移动运算符:把">>"左边的运算数的各二进位全部右移若干位,>> 右边的数字指定了移动的位数 a >> 2 输出结果 15 ,二进制解释: 0000 1111

c)逻辑运算符

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

d)成员运算符

运算符 介绍
in 如果在指定的序列中找到值返回 True,否则返回 False。x 在 y 序列中 , 如果 x 在 y 序列中返回 True。
not in 如果在指定的序列中没有找到值返回 True,否则返回 False。 x 不在 y 序列中 , 如果 x 不在 y 序列中返回 True。
if a in list:
	print('is here')

e)身份运算符

运算符 描述 示例
is is 是判断两个标识符是不是引用自一个对象 x is y, 类似 id(x) == id(y) , 如果引用的是同一个对象则返回 True,否则返回 False
is not is not 是判断两个标识符是不是引用自不同对象 x is not y , 类似 id(a) != id(b)。如果引用的不是同一个对象则返回结果 True,否则返回 False。
a = 20
b = 20
if a is b:
	print('yes')

f)运算符优先级

运算符 描述
** 指数 (最高优先级)
~ + - 按位翻转, 一元加号和减号 (最后两个的方法名为 +@ 和 -@)
* / % // 乘,除,取模和取整除
+ - 加法减法
>> << 右移,左移运算符
& 位 ‘AND’
^| 位运算符
<= < > >= 比较运算符
<> == != 等于运算符
= %= /= //= -= += *= **= 赋值运算符
is is not 身份运算符
in not in 成员运算符
not and or 逻辑运算符

你可能感兴趣的:(python基础学习总结day01)