python学习记录1

 

1.字典{  }

删除键 del

1.Items( )   item()方法把字典中每对key和value组成一个元组,并把这些元组放在列表中返回

for key,value in user_0.items():

     Print(“\nkey:”+key)

     Print(“value:”+value)

结果:

Key: last

Value:fermi

 

Key:first

Value:enner

 

Key:username

Value:eferm

2keys()  返回的是键

For name in favorite_languages.keys( ):

  Print(name.title())

结果:

Jen

Sara

Phil

3.进行排序输出

For name in sorted(favorite_language.keys()):

Print(name.title()+”,thankyou for taking the poll.”)

4.values()   返回的是值不筛去重复值

For language in favorite_language.values():

    Print(language.title())

结果:

Python

C

python

Ruby

5.set()  筛去重复值

For language inset(favorite_language.values()):

Print(language.title))

结果:

Python

C

Ruby

格式化
一、用%表示
在python中,采用的格式化方法与c语言是一致的,用%实现,如下
1.>>> 'Hello,%s'%('world')
'Hello,world'
2.>>> 'Hi, %s, you have $%d.' % ('Michael', 1000000)
'Hi, Michael, you have $1000000.'
%s表示用字符串替换
%d替换整数
%f替换浮点数
%x替换十六进制整数
3.>>> 'Age: %s. Gender: %s' % (25, True)
'Age: 25. Gender: True'
有些时候,字符串里面的%是一个普通字符怎么办?这个时候就需要转义,用%%来表示一个%:

4.>>> 'growth rate: %d %%' % 7
'growth rate: 7 %'
二、用format()表示
>>> 'Hello, {0}, 成绩提升了 {1:1f}%'.format('小明', 17.125)
'Hello, 小明, 成绩提升了 17.1%'

其它知识点
1. classmates[-1]  列表中直接获取最后一个元素
classmates[-2] 获取倒数第二个
classmates.append('Adam') 在末尾添加元素
classmates.insert(1,'Jack') 将索引位置为1的地方插入元素
classmates.pop()删除列表末尾的元素
classmates.pop(1)删除指定位置的元素
2.有序元祖tuple
tuple一旦初始化就不能再修改,classmates=('Mical','Bob','Tracy')
再议input
s=input('birth:')
birth=int(s)
if birth<2000:
    print('00前')
else:
    print('00后')
3.range(101)生成0-100的整数序列
4.字典 {}
5.set 重复元素自动过滤
>>> s = set([1, 2, 3])
>>> s
{1, 2, 3}
add(key)可以添加元素到set中
remove(key)删除元素
两个set可以做数学意义上的交集、并集等操作
>>> s1 = set([1, 2, 3])
>>> s2 = set([2, 3, 4])
>>> s1 & s2
{2, 3}
>>> s1 | s2
{1, 2, 3, 4}
6.abs()绝对值函数
max() 返回最大值
hex()把整数转换成十六进制
引用 abstest.py中的my_abs()函数
from abstest import my_abs
三、
1.可变参数
计算a2 + b2 + c2 + ……。平方
def calc(number):
    sum=0
    for n in numbers:
        sum=sum+n*n*n
    return sum
这个时候调用的时候,需要先组装出一个list或者tuple
calc([1,2,3])或者 calc((1,3,5,7))
给为可变参数函数,只需要在参数前面加一个*号
def calc(*number):
    sum=0
    for n in numbers:
        sum=sum+n*n*n
    return sum
cala(1,2)
*nums表示把nums这个list的所有元素作为可变参数传进去
2.关键字参数
而关键字参数允许你传入0个或任意个含参数名的参数,这些关键字参数在函数内部自动组装为一个dict
def person(name, age, **kw):
    print('name:', name, 'age:', age, 'other:', kw)
>>> person('Michael', 30)
name: Michael age: 30 other: {}
>>> person('Bob', 35, city='Beijing')
name: Bob age: 35 other: {'city': 'Beijing'}
>>> person('Adam', 45, gender='M', job='Engineer')
name: Adam age: 45 other: {'gender': 'M', 'job': 'Engineer'}
*args是可变参数,args接收的是一个tuple;

**kw是关键字参数,kw接收的是一个dict。
3.切片
L[0:3]表示,从索引0开始取,直到索引3为止,但不包括索引3。即索引0,1,2,正好是3个元素。
如果第一个索引是0,还可以省略:
>>> L[:3]
['Michael', 'Sarah', 'Tracy']
前10个数,每两个取一个:
>>> L[:10:2]
[0, 2, 4, 6, 8]
4.迭代
>>> d = {'a': 1, 'b': 2, 'c': 3}
>>> for key in d:
...     print(key)
...
a
c
b

迭代出的结果顺序可能不一样,默认情况下,dict迭代的是key,如果要迭代value。可以用for value in d.values()。如果要同时迭代出key和value,可以用 for k,v in d.items()
5. 列表生成式
>>> [x * x for x in range(1, 11)]
[1, 4, 9, 16, 25, 36, 49, 64, 81, 100]
>>> [x * x for x in range(1, 11) if x % 2 == 0]
[4, 16, 36, 64, 100]
还可以使用两层循环,可以生成全排列:
>>> [m + n for m in 'ABC' for n in 'XYZ']
['AX', 'AY', 'AZ', 'BX', 'BY', 'BZ', 'CX', 'CY', 'CZ']
6.内建函数isinstance()
>>> x = 'abc'
>>> y = 123
>>> isinstance(x, str)
True
>>> isinstance(y, str)
False
如果一个函数定义中包含yield关键字,那么这个函数就不再是一个普通函数,而是一个generator.generator的函数,在每次调用next()的时候执行,遇到yield语句返回,再次执行时从上次返回的yield语句处继续执行。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值