开始的前提,默认已经搭建好anaconda环境,我使用anacodna3.7版本。
1.python初体验
1.1print和input
print是一个打印函数,在python2和python3中有一定的差别
python2中
a=5
print a
>>>5
python3中
a=5
print(a)
>>>5
不同之处:需要加括号。
2.pyhton基础
2.1python变量特性+命名规则
2.1.1变量特性
变量只是用来指代某个东西的名字,就如在上面1.1中的print函数,用a指代5,打印的时候就可以直接打印a,结果就会输出5。
优点:在程序中含有大量的变量的时候,非常有用,而且结合下面所说的命名规则,会更有帮助。
2.1.2命名规则
1.变量名只能包含字母、数字和下划线。变量名可以是字母或下划线打头,但是不能以数字打头,例如,可以将变量名命名为message_1,但是不可以命名为1_message。
2.变量名不能包含空格,但可以使用下划线来分割其中的单词。例如, 变量名greeting_message可行, 但变量名greeting message会引发错误。
3.不要将python的关键字和函数名用作变量名,也就是说不要使用python保留用于特殊用途的单词,例如print,input等。
4.变量名要既短小又精悍。也就是说,name比n好,student_name比s_n好,name_length比length_of_persons_name好。归根到底就是说,代码中变量名实在是太多了,所以给名字起得有意义一些,这样方便我们后续看的时候明白这代表的是什么,不然过几天就会看不懂自己写的代码了。
5.慎用小写字母l和大写字母O,因为有可能被错看成1和0。这也是加强了代码的可读性,很有必要。
2.2注释方法
由两种注释方法
1.用#,#后面的内容都是注释内容,但是这个只适用于单行注释,如要注释多行,需要每一行开头加入#
2.片注释,用'''和'''完成一片注释,可以注释单行也可以注释多行,例如。
'''a="hello world"
b="a"
print (a)
print (b)'''
2.3 python中“:”作用
用在定义分片、步长(第一个数代表起始,第二个数代表结束,实际用的时候要减去1,第三个数代表步长,也就是间隔),例如
1.list1[:3:2]:从索引为0-2按步长为2取,也就是取出索引号为0和2的两个元素
2.tul1[3:6:2]:从索引号为3-5按步长为2 取,也就是取出索引号为3,5的两个元素
2.4使用dir()和help()
python内置了很多内置函数、类方法及各种模块。让我们想要了解某种类型有哪些属性方法以及每种方法该怎么使用时,我们可以使用dir()函数和help()在python idea交互式模式下获得我们要的信息。
1.dir()用来查询一个类或者对象的所有属性,例如,
>>> dir(list)
['__add__', '__class__', '__contains__', '__delattr__', '__delitem__', '__dir__', '__doc__', '__eq__', '__format__', '__ge__', '__getattribute__', '__getitem__', '__gt__', '__hash__', '__iadd__', '__imul__', '__init__', '__iter__', '__le__', '__len__', '__lt__', '__mul__', '__ne__', '__new__', '__reduce__', '__reduce_ex__', '__repr__', '__reversed__', '__rmul__', '__setattr__', '__setitem__', '__sizeof__', '__str__', '__subclasshook__', 'append', 'clear', 'copy', 'count', 'extend', 'index', 'insert', 'pop', 'remove', 'reverse', 'sort']
>>>
2.help()帮助我们了解模块、类型、对象、方法、属性的详细信息。
*帮助查看类型详细信息,包含类的创建方式、属性、方法
>>> help(list)
Help on class list in module builtins:
class list(object)
| list() -> new empty list
| list(iterable) -> new list initialized from iterable's items
|
| Methods defined here:
|
| __add__(self, value, /)
| Return self+value.
|
| __contains__(self, key, /)
| Return key in self.
|
| __delitem__(self, key, /)
| Delete self[key].
|
| __eq__(self, value, /)
| Return self==value.
|
| __ge__(self, value, /)
| Return self>=value.
|
| __getattribute__(self, name, /)
| Return getattr(self, name).
|
| __getitem__(...)
| x.__getitem__(y) <==> x[y]
|
| __gt__(self, value, /)
| Return self>value.
|
| __iadd__(self, value, /)
| Implement self+=value.
|
| __imul__(self, value, /)
| Implement self*=value.
|
| __init__(self, /, *args, **kwargs)
-- More --
*帮助查看方法的详细使用信息(使用时要注意输入完整路径,使用模块帮助时,需要先导入模块)
>>> from selenium.webdriver.common.by import By
>>> help(By)
Help on class By in module selenium.webdriver.common.by:
class By(builtins.object)
| Set of supported locator strategies.
|
| Data descriptors defined here:
|
| __dict__
| dictionary for instance variables (if defined)
|
| __weakref__
| list of weak references to the object (if defined)
|
| ----------------------------------------------------------------------
| Data and other attributes defined here:
|
| CLASS_NAME = 'class name'
|
| CSS_SELECTOR = 'css selector'
|
| ID = 'id'
|
| LINK_TEXT = 'link text'
|
| NAME = 'name'
|
| PARTIAL_LINK_TEXT = 'partial link text'
|
| TAG_NAME = 'tag name'
|
| XPATH = 'xpath'
>>>
2.5 import使用
import用来导入模块
1.直接import安装的包
import Module
import Module as xx
2.从包import对象(下级模块,类,函数,变量等)
from Module import Name
from Module import xx as hostname
from Module import *
2.6 pep8介绍
pep8是一种编码规范,规范要从开始就注意起来。
这个详细写起来太多,我引用一个单独的博客,下午把它完善了。
参考博客如下,后续还会更新的:
https://blog.csdn.net/kele_imon/article/details/87930613
3 python数值基础知识
3.1python中的数值类型
int 整型
float 浮点型
bool布尔型
e计法:3**5表示3的5次幂;3e5表示3乘以10的5次幂
3.2算数运算
以下假设:a=10,b=20:
运算符 | 描述 | 实例 |
---|---|---|
+ | 加:两个对象相加 | a+b 输出结果 30 |
- | 减:得到负数或者是一个数减去另一个数 | a-b 输出结果 -10 |
* | 乘:两个数相乘或是返回一个被重复若干次的字符串 | a*b 输出结果 200 |
/ | 除:x除以y | b / a 输出结果是 2 |
% | 取模:返回除法的余数 | b % a 输出结果0 |
** | 幂:返回x的y次幂 | a**b 为10的20次方,输出结果 100000000000000000000 |
// | 取整数:返回商的整数部分(向下取整) | 9/2 =4 -9/2 = -5 |
3.3 逻辑运算符
以下假设:a = 10,b = 20:
运算符 | 逻辑表达式 | 描述 | 实例 |
---|---|---|---|
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 |
3.4成员运算符
运算符 | 描述 | 实例 |
---|---|---|
in | 如果在指定的序列中找到值返回True,否则返回False | x在y序列中,如果x在y序列中返回True |
not in | 如果在指定的序列中没有找到值返回True,否则返回False | x不在y序列中,如果x不在y序列中返回True |
3.5身份运算符
身份运算符用于比较两个对象的存储单元
运算符 | 描述 | 实例 |
---|---|---|
is | is是判断两个标识符是不是引用自一个对象 | x is y,类似 id(x) == id(y),如果引用的是同一个对象则返回True,否则返回False |
is not | is not 是判断两个标识符是不是引用自不同对象 | x is not y,类似 id(x) != id(y),如果引用的不是同一个对象则返回结果True,否则返回False |
3.6运算符优先级
以下表格列出了从最高到最低优先级的所有运算符:
运算符 | 描述 |
---|---|
** | 指数(最高优先级) |
~ + - | 按位翻转,一元加号和一元减号(最后两个的方法名为 +@ 和 -@) |
* / % // | 乘,除,取模和整除 |
+ - | 加法减法 |
>> << | 右移,左移运算符 |
& | 位 'AND' |
^ | | 位运算符 |
<= < > >= | 比较运算符 |
<> == != | 等于运算符 |
= %= /= //= -= += *= **= | 赋值运算符 |
is is not | 身份运算符 |
in not in | 成员运算符 |
not and or | 逻辑运算符 |
纯属自己学习收集资料,如有雷同,纯属巧合。