寒假自学python(第四篇---Python3 基础语法)

目录

一.格式化字符串的函数

二、列表、元组、字符串

三、函数


一.格式化字符串的函数

str.format()函数是通过 {} 和 : 来代替以前的 % 。        :d/f/.. 来指定类型

>>>"{} {}".format("hello","world")  ##无位置参数
"hello world"            

>>>"{1} {0} {1}".format("hello","world") ##含位置参数
"world hello world"

>>>"{0} {a} {b}".format("hello",a="world",b="hello")
"hello world hello"
 ##位置参数与关键字参数结合时,位置参数必须在前面

# 通过字典设置参数
site = {"name": "菜鸟教程", "url": "www.runoob.com"}
print("网站名:{name}, 地址 {url}".format(**site))

# 通过列表索引设置参数
my_list = ['菜鸟教程', 'www.runoob.com']
print("网站名:{0[0]}, 地址 {0[1]}".format(my_list))  # "0" 是必须的

一些数字格式化的方法 ↓

可以用{}来转义{}

>>>print ("{} 对应的位置是 {{0}}".format("runoob"))

runoob 对应的位置是 {0}

二、列表、元组、字符串

  • 都可以通过索引得到每一个元素
  • 默认索引值为0
  • 可以通过切片得到集合
  • 有很多相同操作符(*重复,+拼接,in成员关系操作符)

list(iterable)-->将一个迭代对象转换为列表

tuple(iterable)-->将一个迭代对象转换为元组

str(obj)-->将obj对象转换为字符串

返回一个新的组合(原组合不便)

三、函数

#定义一个函数格式
def function():
       statements

#调用函数
function()

##def为关键字,function为函数名,()内可传入参数,多个参数用逗号相隔

在传入参数时,python会自动按照顺序索引,在传入实参时,用户可以通过设立关键字来进行关键字索引。定义函数时如果设立了形参,传入的实参会覆盖掉形参。

  •  收集参数

在参数名前加*,当传入参数时,所有的参数都被收集起来放在一个参数名这个元组里。(其他参数要用默认参数或者关键字参数)

>>>def function(*para):
>>>    print(len(para))
>>>    print(para[1])
>>>function(1,2,'3','para')
4
2
  • 匿名参数 

python使用lambda来创建匿名函数,lambda 函数的语法只包含一个语句,如下:

lambda [arg1 [,arg2,.....argn]]:expression

lambda 参数:返回值

sum = lambda arg1, arg2: arg1 + arg2
 
# 调用sum函数
print ("相加后的值为 : ", sum( 10, 20 ))
>>>30
  •  参数传递

在 python 中,类型属于对象,变量是没有类型的。

a = [1,2,3]
a = "robble"

以上代码中,[1,2,3] 是 List 类型,"robble" 是 String 类型,而变量 a 是没有类型,她仅仅是一个对象的引用(一个指针),可以是指向 List 类型对象,也可以是指向 String 类型对象。

在 python 中,strings, tuples, 和 numbers 是不可更改的对象,而 list,dict 等则是可以修改的对象。

  • 不可变类型:变量赋值 a=5 后再赋值 a=10,这里实际是新生成一个 int 值对象 10,再让 a 指向它,而 5 被丢弃,不是改变 a 的值,相当于新生成了 a。
  • 可变类型:变量赋值 la=[1,2,3,4] 后再赋值 la[2]=5 则是将 list la 的第三个元素值更改,本身la没有动,只是其内部的一部分值被修改了。

可变参数在函数内被修改,在函数外原始的参数也会被修改。

  • 函数filter

filter(None or function , iterable)

参数1为None时,函数返回可迭代对象中的True值,参数1为函数时,将可迭代对象中的元素作为参数,若在参数1返回的结果为True,则返回这个值

b=list(filter(None,[1,0,True,False]))
print(b)
>>>[1,True]

b=list(filter(lambda x : x%2,range(10)))
print(b)
>>>[1, 3, 5, 7, 9]

python如何一次性输入多个数?

python一次性输入多个数的方法:1、输入两个数字【m, n = map(int, input().split());】;2、输入三个及三个以上数字【a, b, c, d = map(int, input().split());】。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值