Python第一天学习---基础语法

1.字符串的用法(String)

  • Python 中的字符串有两种索引方式,从左往右以 0 开始,从右往左以 -1 开始。
  • Python中的字符串不能改变。
  • Python 没有单独的字符类型,一个字符就是长度为 1 的字符串

这三点是我觉得Python字符处理特别的一点

我们来看第二点

#coding=UTF-8
a = 99
print (id(a))
b=''
print (id(b))
b+='abc'
print (id(b))
b+=str(a)
print(id(b))
print(id(b))

 

我们可以这样理解:就比如,盒子里面有一个苹果,现在你要放一个香蕉进去,但盒子放不下了,只能把苹果和香蕉先放到一个新盒子里面,在返回给你。

2.变量类型

##变量赋值

首先变量不需要声明类型,其次多次赋值可以这样

a,b,c = 1,2,"runoob"
print(c)

##Python的标准数据类型

  • Numbers(数字)
  • String(字符串)
  • List(列表)
  • Tuple(元组)
  • Dictionary(字典)

列表[]与元素()

#列表
list = ['a','b',1998,'k','l']

list[2]='0804'
print(list[1:3])*2

#元组就是只读列表,不可更改
list2 = ('q','w','e','r','s')
#list2[2]='0804'非法
print(list2[0:3])

字典{}(有映射)

Map = {"key1":"value1","key2":"value2","key3":"value3",1:9}

print(Map.keys())
print(Map.values())
print(Map["key1"])

 ##运算符

**幂 //除取整

判断是否在一个集合中  in   not in

判断两个标识符是否引用同一个对象 is  is not

 

##条件语句 Python不支持switch所以只能用 if elif else

 

#coding=UTF-8
while 1:
    n = input("请输入一个数字")
    if n < 60 and n >= 0:
        print("不及格")
    elif n >= 60 and n < 90:
        print("及格")
    elif 100 >= n >= 90:
        print("优秀")
    else:
        print("待定")

 

##循环语句

#coding=UTF-8

a = ['Google','Baidu','Bing','Tencent','Bilibili']
for i in a:
    if i=='Baidu':
        pass
        print("执行pass代码段,顺便把百度搞掉");
        continue
    print("循环数据"+i)

for i in range(len(a)):
    print(i,a[i])

 

##迭代器和生成器

迭代器访问集合元素的方式

具体步骤:1.创建迭代器对象 iter()方法 2.遍历迭代器next()方法

import sys
list=[1,2,3,4]
it = iter(list)  #建立迭代器对象

while 1:
    try:
        print (next(it))   #不断遍历迭代器中的所有集合,当没有是结束
    except StopIteration:
        sys.exit()

生成器:

在 Python 中,使用了 yield 的函数被称为生成器(generator)。跟普通函数不同的是,生成器是一个返回迭代器的函数,只能用于迭代操作,更简单点理解生成器就是一个迭代器。

在调用生成器运行的过程中,每次遇到 yield 时函数会暂停并保存当前所有的运行信息,返回 yield 的值, 并在下一次执行 next() 方法时从当前位置继续运行。

调用一个生成器函数,返回的是一个迭代器对象。

#coding=UTF-8

import sys

def fibonacci(n):
    a,b,counter = 0,1,0
    while True:
        if(counter>n):
            return
        yield a
        a,b = b,a+b
        counter +=1
f = fibonacci(10)

while True:
    try:
        print(next(f)),
    except StopIteration:
        sys.exit()


0 1 1 2 3 5 8 13 21 34 55

 

posted @ 2018-07-26 13:14  leonard丶zou  阅读(202)  评论(0编辑  收藏  举报