Python基础篇(五)

bool用于判断布尔值的结果是True还是False

>>> bool("a")

True

>>> bool(3)

True

>>> bool("")

False

>>> bool(0)

False

Python中的elif类似于Java中的elseif

>>> number = (int)(input("input a number: "))

input a number: 9

>>> if number >0:

...     print("postive")

... elif number<0:

...     print("negative")

... else:

...     print("zero")

...

postive

可以将符合if后面的语句和if放在一行,也可以使用空格来缩进。使用空格来缩进时,如果缩进所使用的空格的个数不一样会导致出错,这点是需要注意的。

Python中==和Java中的作用不一样,比较的是内容,比较内存地址使用的是is或者is not

>>> x=y=[1,2,3]

>>> z =[1,2,3]

>>> x == z

True

>>> x is z

False

>>> x is not z

True

in运算符用于判断元素是否是成员

>>> name = input("input your name: ")

input your name: sdd

>>> if "s" in name:

...    print("\"s\" is in your name")

... else:

...     print("not in")

...

"s" is in your name

更多的运算符操作:

>>> number = (int)(input("input a number between 0 and 10 : "))

input a number between 0 and 10 : 2

>>> if 0<=number<=10:

...    print("correct number")

... else:

...    print("wrong number")

...

correct number

while循环

>>> x=1

>>> while x<=100:

...     print(x)

...     x = x+1

for循环,Python中的for循环常和range配合使用

>>> for i in range(0,100):    #也可以写成range(100)

...    print(i)

>>> words = ["hello world"]

>>> for word in words:

...    print(word)

...

hello world

能使用for循环时尽量使用for循环,for循环更加简洁。

使用for循环遍历字典

>>> d= {"a":"1","b":"2","c":"3"}

>>> for key,value in d.items():

...    print(key,value)

...

b 2

a 1

c 3

list有sort方法,tuple和str没有sort方法,但是可以直接调用内置的sorted方法

>>> l=[3,1,4,2]

>>> l.sort()

>>> l

[1, 2, 3, 4]

>>> sorted((2,4,1,3))

[1, 2, 3, 4]

>>> sorted("2413")

[‘1‘, ‘2‘, ‘3‘, ‘4‘]

同样的还使用与reverse,用于做翻转操作。

break语句,和for配合使用,跳出循环

求1到99平方根为整数的数字,找到1个后使用break跳出循环

>>> for int in range(99,0,-1):

...     if sqrt(int) % 1 ==0.0 :

...        print(int)

...        break

...

81

continue,跳过本轮循环

>>> for int in range(0,11):

...    if int % 2 == 0:

...       print(int)

...    else:

  ...       continue

  ...

  while True用于构建一个无限循环

  >>> while True:

  ...    word = input("Please input a word: ")

  ...    if not word : break

  ...    print(word)

  ...

  Please input a word: add

  add

  Please input a word: p

  p

  Please input a word:

  for循环可以配合else使用,for中有输出时则不会调用else,否则会调用else

  >>> from math import sqrt

  >>> for int in range(99,81,-1):

  ...     if sqrt(int) % 1 ==0.0 :

  ...        print(int)

  ...        break

  ...    else:

  ...        print("not found")

  ...

  not found

  列表推导式:轻量级for循环

  >>> [x*x for x in range(10)]

  [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

  可以代替下面复杂的逻辑:

  >>> items = []

  >>> for int in range(0,10):

  ...    items.append(int*int)

  ...

  >>> items

  [0, 1, 4, 9, 16, 25, 36, 49, 64, 81]

  用if增加更多的限制条件:

  >>> [x*x for x in range(10) if x%3==0]

  [0, 9, 36, 81]

  增加更多的for语句:

  >>> [(x,y) for x in range(3) for y in range(3)]

  [(0, 0), (0, 1), (0, 2), (1, 0), (1, 1), (1, 2), (2, 0), (2, 1), (2, 2)]

  Python中空代码是非法的,如果某种情况下的处理代码未完成,又想进行调试,可以用pass代替未完成的代码

  >>> number = (int)(input("input a number between 0 and 10:"))

  input a number between 0 and 10:-1

  >>> if 0<=number<=10:

  ...    print("correct number")

  ... else:

  ...     pass

  ...

  exec函数可以执行字符串格式的Python命令

  >>> exec("print(\"hello world\")")

  hello world

  但是简单的使用exec函数不是好的选择,exec的内容可能来自于网络,出于安全的考虑,需要将exec的内容先存储到一个命名空间中,从而使代码不会影响到其他的命名空间。

  >>> from math import sqrt

  >>> exec("sqrt =1")

  >>> sqrt(4)

  Traceback (most recent call last):

   File "<stdin>", line 1, in <module>

  TypeError: ‘int‘ object is not callable

  上述的例子就是产生了相互的干扰。

  >>> from math import sqrt

  >>> scope = {}

  >>> exec("sqrt =1",scope)    #2.x版本的命令是exec("sqrt =1") in scope

  >>> sqrt(4)

  2.0

  >>> scope.get("sqrt")

  1

  eval函数用于计算表达式的值:

  >>> eval(input("enter an arithmetic expression: "))

  enter an arithmetic expression: 6 + 18*2

  42

  >>> scope ={"x":1,"y":2}

  >>> eval("x*y",scope)

  2

  >>> scope ={}

  >>> exec("x=2",scope)

  >>> eval("x*x",scope)

  4

  使用缩进来格式代码块时,一定要注意匹配,多一个少一个空格就可能无法匹配,导致出错。

  创建函数:

  >>> def facfunction(number):

  ...     fac = [0,1]

  ...     for n in range(number):

  ...        fac.append(fac[-1] + fac[-2])

  ...     return fac

  ...

  >>> facfunction(8)

  [0, 1, 1, 2, 3, 5, 8, 13, 21, 34]

  def关键字可以用于创建函数,其他地方要引用函数直接调用函数名即可。

  Python中的函数可以用return返回一个返回值,没有返回值时可以返回空。

  希望给函数的功能加上注释,可以使用#,也可以直接使用字符串,使用help参数来查看注释。

  >>> def facfunction(number):

  ...     "caculate fac number"

  ...     for n in range(number):

  ...        fac.append(fac[-1] + fac[-2])

  ...     return fac

  ...

  >>> help(facfunction)

  Help on function facfunction in module __main__:

  facfunction(number)

   caculate fac number

Python基础篇(五)

时间: 2024-12-29 23:36:29

Python基础篇(五)的相关文章

python基础篇(五)

python基础篇(五) 算法初识 什么是算法 二分查找算法 ?一:算法初识 A:什么是算法 根据人们长时间接触以来,发现计算机在计算某些一些简单的数据的时候会表现的比较笨拙,而这些数据的计算会消耗大量计算机资源,而且耗时,这个时候就有人对这类计算编写了一些策略,这些策略就是算法.这些策略会加快数据计算时间,大大减少计算机的资源消耗. 在长时间人们编写代码的工作中,一些优秀的算法就被流传下来,但是不是所有的算法都能实现目的一步到位的工作,它只能减少你的代码,提高工作效率,随着知识的不断积累,你会

python基础篇(二)

python基础篇(二) if:else,缩进和循环控制 A:if的基础格式和缩进 B:循环判断 C:range()函数和len()函数 D:break,contiue和pass语句 for,while循环 函数基础 A:函数的定义和返回值 B:返回值的三种情况 C:函数的注释 函数的进阶(命名空间和作用域) A:内置命名空间 B:全局命名空间 C:局部命名空间 D:全局作用域 E:局部作用域 F:函数的嵌套和作用域链. G:函数名的本质 闭包 ?一:if:else和缩进 A:if的基础格式和缩

Python基础篇(八)

key words:私有变量,类静态变量,生成器,导入Python模块,r查看模块可以使用的函数,查看帮助信息,启动外部程序,集合,堆,时间模块,random模块,shelve模块,文件读取等 >>> class Rectangle: ...     def __init__(self): ...         self.__width = 0 ...         self.__height = 0 ...     def setSize(self,width,height): .

老王python基础篇--python, 视频, 教程, 视频教程, 基础

老王python基础篇 基础篇11-python基本数据结构-元组和集合.rar 基础篇19-python语句与数据结构应用.rar 基础篇21-文本操作应用.rar 基础篇3-虚拟机安装xubuntu开发环境.rar 基础篇17-python语句1.2.rar 基础篇10-python基本数据结构-列表应用.rar 基础篇9-python基本数据结构-列表.rar 基础篇5-python基本数据类型讲解1.1.rar 基础篇18-基础篇综合习题.rar 基础篇8-python基本数据类型习题解

python基础篇

python基础篇 变量命名 >>> name_value='freddy' 1 >>> name_value=freddy 2 Traceback (most recent call last): 3 File "<stdin>", line 1, in <module> 4 NameError: name 'freddy' is not defined **变量的值如果是字符串必须要加引号,否则定义变量会报错 (因为他把变

Python基础篇(三)

元组是序列的一种,与列表的区别是,元组是不能修改的. 元组一般是用圆括号括起来进行定义,如下: >>> (1,2,3)[1:2]     (2,) 如果元组中只有一个元素,元组的表示有些奇怪,末尾需要加上一个逗号: >>> (1,2,3)[1:2]     (2,) >>> 3*(3)      9      >>> 3*(3,)      (3, 3, 3) tuple函数 tuple函数用于将任意类型的序列转换为元组: >&

Python基础篇(七)

加上两个下划线变量或者方法变为私有. >>> class Bird: ...    __song = "spark" ...    def sing(self): ...       return self.__song ... >>> b = Bird() >>> b.sing() 'spark' >>> b.__sing() Traceback (most recent call last): File &qu

Python基础篇(六)

retun空值,后面的语句将不再被执行 >>> def test(): ...    print("just a test!") ...    return ...    print("will not be print") ... >>> test() just a test! 和Java类似,在传递参数时,当参数是字符串,元组时,传递的其实是拷贝,修改实际参数不会影响到形式参数.当参数是对象时,修改实际参数将会影响到形式参数.

Python基础篇(一)

首先需要从Python的官网下载python的安装程序,下载地址为:www.python.org/downloads.最新的版本为3.4.1,下载和操作系统匹配的安装程序并安装即可. 安装好了后,在开始里面应该可以找到Python的相关启动项,如上图所示. Python基础篇(一)