Python基础学习

1、字符串前r的用法

       以r或R开头的python中的字符串表示(非转义的)原始字符串

      

2、字符串前u的用法

       在python2.x里面,u表示unicode string,类型是unicode,没有u表示byte string,类型是str

      在python3.x里面,所有字符串都是unicode string,u前缀没有特殊含义

       r和u可以搭配使用,例如ur“abc”

3、编码注释

       如果要在python2的py文件里面写中文,则必须要添加一行声明文件编码的注释,目的是告诉Python解释器,用UTF-8编码读取源代码否则python2会默认使用ASCII编码

 # -*- coding:utf-8 -*-

4、List和Tuple类型

       list和tuple是Python内置的有序集合,一个可变,一个不可变

       list是一种有序的集合,可以随时添加和删除其中的元素。

      

# -*- coding:utf-8 -*-

#1、声明list
s=["liwb","qnn"]

#2、访问第一个元素
s[0]

#3、访问倒数第一个元素
s[-1]

#4、在最后一个元素后添加一个元素
s.append("liyc")

#5、在索引1处插入值
s.insert(1,"liss")

#6、删除最后一个元素
s.pop()

#7、删除索引为1的元素
s.pop(1)

#8、重新给某索引处赋值

s[1]="lyc"

#9、查看list中元素个数
len(s)

       tuple是一种有序的集合,不可变。

#1、声明
s=("liwb","qnn","liyc")
#2、取得第一个元素
s[0]
#3、取得倒数第一 个元素
s[-1]

       注意:
       1、与list相比使用方法一致,不可以添加元素
       2、定义只有一个元素时
               s=(1,)
       3、tuple内可以有list
               s=(1,2,["ad","cccc"])

5、dictset类型
       dict:字典,以key-value 形式存储,创建方式用大括号{},并用冒号分隔键、值 

       用空间换取时间,占据空间大,但查询速度快,键值对(key:value),key唯一

#创建dict
d={"chen":60,"zhang":80}
print(d)
#赋值操作
d['chen']=65
print(d)
#取值:get()方法,可以为其设置默认值。
print(d.get("liu",0))
#删除:可以用pop方法删除值,并将删除的元素返回。
d['liu']=85
print(d)
d.pop('liu')
print(d)
#keys()和values()方法分别返回字典的键和值集合,虽然键值对没有特定的顺序,但是这两个方法返回的结果顺序是一致的。
print(d.keys())
print(d.values())
#字典合并:使用update()方法可以两个字典进行合并。
d1={'a':100,'b':99}
d.update(d1)
print(d)
      set:集合,set和dict类似,也是一组key的集合,但不存储value。由于key不能重复,所以,在set中,没有重复的key。

#创建set
s=set([1,2,3,4,5])
print s
#添加元素
s.add(6)
print s
#如果set里已存在该元素,再次添加不会有效果
s.add(6)
print s
#删除元素
s.remove(6)
print s
#集合交集
s1=set([3,5,7])
print s&s1
#集合并集
print s|s1
#两个集合的差
print s1-s
#两个集合的异或
print s^s1
#判断一个集合是否为另外一个集合的子集
print {1,3,5}.issubset(s)
#判断一个集合是否为另外一个集合的超集
print  s.issuperset({1,5})

6、函数返回多值

      python函数返回多值其实是一种假象,其实python函数返回的仍然是单一值(tuple)

      在语法上,返回一个tuple可以省略括号,而多个变量可以同时接收一个tuple,按位置赋值给对应的值,所以python的函数返回多值其实是返回一个tuple

#比如在游戏中经常需要从一个点移动到另一个点,给出坐标、位移和角度,就可以计算出新的坐标:
import math

def move(x, y, step, angle):
    nx = x + step * math.cos(angle)
    ny = y - step * math.sin(angle)
    return nx, ny

print(move(100, 100, 60, math.pi / 6))

7、函数的参数

      python函数参数的定义主要有以下四种方式:

#最常见的定义方式
def a(x, y):
    print x, y
#含有默认值的函数
def a(x,y=3):
    print x, y
#参数加*表示这个函数的实参个数不定,可能为0也能为n个,参数接收的是一个tuple
def a(*args):
    print args
#参数加**表示参数接收的是一个dict,调用函数时,需采用arg1=value1,arg2=value2这样的形式
def a(**kwargs):
    print kwargs

可变参数既可以直接传入:func(1, 2, 3),又可以先组装list或tuple,再通过*args传入:func(*(1, 2, 3))

关键字参数既可以直接传入:func(a=1, b=2),又可以先组装dict,再通过**kw传入:func(**{'a': 1, 'b': 2})

使用*args**kw是Python的习惯写法,当然也可以用其他参数名,但最好使用习惯用法。



  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值