Python基础
跳到导航
跳到搜索
目录
Python项目读取配置方式
常见的是 import configparser
python中字典的循环遍历的两种方式
1. 只对键的遍历 一个简单的for语句就能循环字典的所有键,就像处理序列一样: In [1]: d = {'name1' : 'pythontab', 'name2' : '.', 'name3' : 'com'} ...: for key in d: ...: print (key, ' value : ', d[key]) ...: name1 value : pythontab name2 value : . name3 value : com 2. 对键和值都进行遍历 如果只需要值,可以使用d.values,如果想获取所有的键则可以使用d.keys。 如果想获取键和值d.items方法会将键-值对作为元组返回,for循环的一大好处就是可以循环中使用序列解包。 代码实例: or key, value in d.items(): print (key, ' value : ', value) name1 value : pythontab name2 value : . name3 value : com
python3 遍历列表list 四种方法
python文件操作
python读取文件
Python 函数返回值
range
learn
py作为很多开发项目的辅助语言现在来说会更流行一些,不管是github还是其他地方。所以,你能找到的帮助,解决问题的思路也比perl广。 追问 python 自学容易么,可否推荐基本书看看 追答 首先我推荐你从这边开始入门,我以前也是这边看。http://woodpecker.org.cn/abyteofpython_cn/chinese/index.html, 自学容易的。 ,不需要急,等大部分了解后,并且使用py写脚本一段时间之后,你会开始需要更多模块的用法,这时候到 https://docs.python.org/2.7/ 这里查。 书的话,我觉得如果你想成为语法大师的话,O'REILLY 的 跟 这两本, 不会的问题,用google搜,特别是Stack Overflow 的站点上搜往往能找到答案。 当觉得已经对py很熟悉之后,可以看别人的py项目。然后用一些好用的框架比如django啥的,那么就合格了。然后模块就是越用越熟悉
Apr 2024
tuple 英 [tjʊpəl; ˈtʌpəl] 美 [ˈtjʊpəl; ˈtʌpəl] n. [计] 元组,重数
安装 VS Code Python
list
与Python字符串不一样的是,列表中的元素是可以改变的
def reverseWords(input): inputWords = input.split() inputWords=inputWords[-1::-1] output= ' '.join(inputWords) return output if __name__ == "__main__": input = 'I love evan' rw = reverseWords(input) print(rw) ''' evan love I # 翻转字符串 # 假设列表 list = [1,2,3,4], # list[0]=1, list[1]=2 ,而 -1 表示最后一个元素 list[-1]=4 ( 与 list[3]=4 一样) # inputWords[-1::-1] 有三个参数 # 第一个参数 -1 表示最后一个元素 # 第二个参数为空,表示移动到列表末尾 # 第三个参数为步长,-1 表示逆向 https://www.runoob.com/python3/python3-data-type.html '''
Tuple(元组)
元组(tuple)与列表类似,不同之处在于元组的元素不能修改。元组写在小括号 () 里,元素之间用逗号隔开。
元组中的元素类型也可以不相同
tup2 = (20,) # 一个元素,需要在元素后添加逗号 如果你想创建只有一个元素的元组,需要注意在元素后面添加一个逗号,以区分它是一个元组而不是一个普通的值,这是因为在没有逗号的情况下,Python会将括号解释为数学运算中的括号,而不是元组的表示。 如果不添加逗号,如下所示,它将被解释为一个普通的值而不是元组: not_a_tuple = (42)
修改元组
元组中的元素值是不允许修改的,但我们可以对元组进行连接组合
https://www.runoob.com/python3/python3-tuple.html
Dictionary
Python3 条件控制
match...case
Python 3.10 增加了 match...case 的条件判断,不需要再使用一连串的 if-else 来判断了
def http_error(status): match status: case 400: return "bad request" case 404: return "not Found" case 418: return "I am a teapot" case _: return "something's wrong with the internet" mystatus=400 print(http_error(mystatus)) # bad request
Python3 循环语句
斐波纳契数列 n=3 a, b = 0,1 for i in range(n): print("斐波纳契数列为%d"%(b)) a,b = b,a+b print("a is %d b is %d" %(a,b)) ''' 其中代码 a, b = b, a+b 的计算方式为先计算右边表达式,然后同时赋值给左边,等价于: n=b m=a+b a=n b=m ''' [Running] /usr/bin/python3 "/home/evan/tmp/py/2.py" 斐波纳契数列为1 a is 1 b is 1 斐波纳契数列为1 a is 1 b is 2 斐波纳契数列为2 a is 2 b is 3
Python 推导式
Python3 迭代器与生成器
Python3 函数
def area(width, height): return width * height def print_welcome(name): print("welcome",name) print_welcome("evan") w = 4 h = 5 print("width =", w, "height =", h , "area =", area(w,h)) welcome evan width = 4 height = 5 area = 20
x = lambda a : a + 10 print(x(5)) # Output: 15
强制位置参数
https://www.runoob.com/python3/python3-function.html
https://zhuanlan.zhihu.com/p/412273465
参数传递
python 中一切都是对象,严格意义我们不能说值传递还是引用传递,我们应该说传不可变对象和传可变对象。
参数
以下是调用函数时可使用的正式参数类型:
必需参数 关键字参数 默认参数 不定长参数
必需参数
关键字参数
键字参数和函数调用关系紧密,函数调用使用关键字参数来确定传入的参数值。
使用关键字参数允许函数调用时参数的顺序与声明时不一致,因为 Python 解释器能够用参数名匹配参数值
def printinfo( name, age): print ("name:", name) print ("age:", age ) printinfo( age=40, name="nick") name: nick age: 40
默认参数
def printinfo( name, age=33): print ("name:", name) print ("age:", age ) printinfo( age=40, name="nick") print("88888888888888") printinfo( name="evan") name: nick age: 40 88888888888888 name: evan age: 33
不定长参数
你可能需要一个函数能处理比当初声明时更多的参数。这些参数叫做不定长参数,和上述 2 种参数不同,声明时不会命名。基本语法如下: def functionname([formal_args,] *var_args_tuple ): "函数_文档字符串" function_suite return [expression] 加了星号 * 的参数会以元组(tuple)的形式导入,存放所有未命名的变量参数。 def printinfo( arg1, *vartuple ): print("输出") print(arg1) print(vartuple) printinfo( 70,60,50) 输出 70 (60, 50) 还有一种就是参数带两个星号 **基本语法如下: def functionname([formal_args,] **var_args_dict ): "函数_文档字符串" function_suite return [expression] 加了两个星号 ** 的参数会以字典的形式导入 def printinfo( arg1, **vardict ): print("输出") print(arg1) print(vardict) printinfo( 70,a=33,b=50) 输出 70 {'a': 33, 'b': 50}
匿名函数
Python 使用 lambda 来创建匿名函数。
所谓匿名,意即不再使用 def 语句这样标准的形式定义一个函数。
lambda 只是一个表达式,函数体比 def 简单很多
语法 lambda 函数的语法只包含一个语句,如下: lambda [arg1 [,arg2,.....argn]]:expression 设置参数 a 加上 10: 实例 x = lambda a : a + 10 print(x(5)) sum = lambda arg1, arg2: arg1 + arg2 print("相加后的value" ,sum( 10, 20)) print("相加后的value" ,sum( 20, 30)) =====return 语句===== <pre> def sum( arg1, arg2 ): total = arg1 + arg2 print("函数内 : ",total) return total total = sum(10,20) print("函数外",total) 函数内 : 30 函数外 : 30