Python で os および sys モジュールを使用するためのガイド
一、os模块
os.getcwd() 获取当前的工作目录
os.chdir(‘绝对路径/相对于当前工作目录的路径’) 改变工作目录,相当于shell的cd命令,例如Windows平台下os.chdir(r’D:\PythonScripts\test\c’),用r对\进行转义,第一层级必须使用双斜线,其他层级可以单斜线也可以双斜线,在linux和unix平台下用/分割
os.curdir 返回当前路径 .
os.pardir 返回当前路径的上一层路径,即 ..
os.mkdir('dir') 生成单级目录
os.makedirs(r'dir1\dir2') 创建递归目录,不加绝对路径表示在当前工作目录下创建
os.rmdir('dir') 删除单级空目录,如果目录不为空无法删除
os.removedirsr('dir1\dir2') 若目录为空则删除,并递归到上一层目录,若上一层为空也删除,以此类推
os.listdir(dir) 列出指定目录下的所有一级文件和目录,并以列表形式打印
os.remove('file') 删除一个文件
os.rename('oldname','newname') 重命名文件或目录
os.listdir('dir')以列表形式列出dir目录下所有的文件和目录
os.stat('file'/'dir') 获取文件/目录的大小,链接数,创建时间,上一次修改、访问时间等信息
os.sep 获取当前环境的分隔符
os.linesep 获取当前环境的换行符,windows下为/r/n,linux下为/n
os.pathsep 获取当前环境分割文件路径的字符串,windows下为;,linux下为:
os.name 获取当前使用平台,windows为nt,linux为posix
os.environ 获取系统环境变量
os.system(shell command) 运行shell命令,返回执行状态码,执行结果显示到屏幕
os.path.abspath(path) 返回绝对路径
os.path.split(path) 将path分割成目录和文件名的两个元素的元组
os.path.dirame(path) 返回path的目录,相当于os.path.split(path)的第一个元素
os.path.basename(path) 返回path最后的文件名,如果path以/或\结尾则返回空值,即os.path.split(path)的第二个元素
os.path.exists(path) 如果path存在则返回True,否则返回False
os.path.isabs(path) 如果path是绝对路径则返回True,否则返回False
os.path.isfile(path) 如果path是一个存在的文件则返回True,否则返回False
os.path.isdir(path) 如果path是一个存在的目录则返回True,否则返回False
os.path.join(path2[,path3[,path4…]]) 将多个路径组合后返回,第一个绝对路径之前的参数将被忽略
os.path.getatime(path) 获取path所指向的文件或者目录的最后访问时间
os.path.getmtime(path) 获取path所指向的文件或者目录的最后修改时间
二、os模块中的os.walk()函数
os.walk(‘path’)函数对于每个目录返回一个三元组,(dirpath, dirnames, filenames),
第一个是路径,第二个是路径下面的目录,第三个是路径下面的文件
如果加参数topdown=False则表示自下而上进行遍历,默认为topdown=True即自上而下进行遍历
#对于上述结构,os.walk()的结果为 ['dir', ['dir1', 'dir2'], ['file1.txt', 'file2.txt']] ['dir\\dir1', ['dir11', 'dir12'], []] ['dir\\dir1\\dir11', [], ['file111.txt']] ['dir\\dir1\\dir12', [], []] ['dir\\dir2', ['dir21'], ['file21.txt']] ['dir\\dir2\\dir21', [], []] #可通过如下脚本验证 import sys l=[] for root,dirs,files in os.walk('dir'): l.append(root) l.append(dirs) l.append(files) print(l) l=[]
结果分析
1.先以给定的目录作为根目录进行遍历,读取根目录的文件夹和文件
2.以根目录下子目录为新的根目录进行遍历,读取其下面的文件夹和文件
3.再以2中得到的子目录为根目录进行遍历,读取其下面的文件夹和文件
4.重复3,直至所有子目录下面没有子目录和文件
三、sys模块
sys.path 获取python PATH环境变量的值
sys.version 获取python解释器的版本
sys.exit(n) 在程序执行过程中退出程序,正常退出为exit(0)
sys.argv 返回的结果为一个列表且各元素都为字符串,第一个元素为当前执行文件的名称,后面的元素为执行文件时传入的参数,以空格分隔各参数,如果只有空格表示没有参数。
[root@oldboy test]# cat argv.py import sys print(sys.argv) [root@oldboy test]# python argv.py ['argv.py'] [root@oldboy test]# python argv.py 11 '22' [33,44] 'True' {1:'a'}#文件执行时传入的参数不能为元组,否则会报错 ['argv.py', '11', '22', '[33,44]', 'True', '{1:a}']
sys.stdout.write(‘str’) 向屏幕输出,不换行,相当于print,但是print(‘str’)是换行输出
sys.stdout.flush( ) 将缓存输出到屏幕
例如通过#逐步打印进度条
import time,sys for i in range(20): sys.stdout.write('#') #打印一个#,不换行 time.sleep(0.1) #睡0.1秒再输出下一个# sys.stdout.flush() #将缓存中的#输出到屏幕,没有这一行系统会等到输出完毕再将缓存中的20个#输出到屏幕 print('')
解析文件执行时输入的参数:optparse模块
import optparse class ArgvHandle(): def __init__(self): self.op = optparse.OptionParser() self.op.add_option('-s','--server',dest = 'server') #,前面为文件执行时的输入,dest表示参数名。如果文件执行时带有-s或者--server,则形成参数名称为dest指定名称、参数值为-s或者--server后面紧跟着的内容 self.op.add_option('-P','--port',dest = 'port') self.op.add_option('-u','--username',dest = 'username') self.op.add_option('-p','--passwort',dest = 'password') #学习中遇到问题没人解答?小编创建了一个Python学习交流群:725638078 option,args = self.op.parse_args() print(type(option),type(args)) print(option,args) print(option.server,option.port,option.username,option.password)#通过.取参数名对应的值 test = ArgvHandle()
随意输入参数执行结果如下
可知op.parse_args()是将文件执行python mani.py后面的参数分割成两部分,一部分类似字典的形式(实际是一个对象),一部分是一个列表。
如果匹配到add_option定义的参数形式,则将后面紧跟着的输入作为参数的值;未匹配到add_option定义的参数形式的其余输入被整理到一个列表中。
以上がPython で os および sys モジュールを使用するためのガイドの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









羽毛の鍵は、その漸進的な性質を理解することです。 PS自体は、勾配曲線を直接制御するオプションを提供しませんが、複数の羽毛、マッチングマスク、および細かい選択により、半径と勾配の柔らかさを柔軟に調整して、自然な遷移効果を実現できます。

この記事では、MySQLデータベースの操作を紹介します。まず、MySQLWorkBenchやコマンドラインクライアントなど、MySQLクライアントをインストールする必要があります。 1. mysql-uroot-pコマンドを使用してサーバーに接続し、ルートアカウントパスワードでログインします。 2。CreatedAtaBaseを使用してデータベースを作成し、データベースを選択します。 3. createTableを使用してテーブルを作成し、フィールドとデータ型を定義します。 4. INSERTINTOを使用してデータを挿入し、データをクエリし、更新することでデータを更新し、削除してデータを削除します。これらの手順を習得することによってのみ、一般的な問題に対処することを学び、データベースのパフォーマンスを最適化することでMySQLを効率的に使用できます。

MySQLには、無料のコミュニティバージョンと有料エンタープライズバージョンがあります。コミュニティバージョンは無料で使用および変更できますが、サポートは制限されており、安定性要件が低く、技術的な能力が強いアプリケーションに適しています。 Enterprise Editionは、安定した信頼性の高い高性能データベースを必要とするアプリケーションに対する包括的な商業サポートを提供し、サポートの支払いを喜んでいます。バージョンを選択する際に考慮される要因には、アプリケーションの重要性、予算編成、技術スキルが含まれます。完璧なオプションはなく、最も適切なオプションのみであり、特定の状況に応じて慎重に選択する必要があります。

PSフェザーリングは、イメージエッジブラー効果であり、エッジエリアのピクセルの加重平均によって達成されます。羽の半径を設定すると、ぼやけの程度を制御でき、値が大きいほどぼやけます。半径の柔軟な調整は、画像とニーズに応じて効果を最適化できます。たとえば、キャラクターの写真を処理する際に詳細を維持するためにより小さな半径を使用し、より大きな半径を使用してアートを処理するときにかすんだ感覚を作成します。ただし、半径が大きすぎるとエッジの詳細を簡単に失う可能性があり、効果が小さすぎると明らかになりません。羽毛効果は画像解像度の影響を受け、画像の理解と効果の把握に従って調整する必要があります。

PSフェザーリングは、画像の詳細の喪失、色の飽和の減少、およびノイズの増加につながる可能性があります。影響を減らすために、小さな羽の半径を使用し、レイヤーをコピーしてから羽毛をコピーし、羽毛の前後に画質を慎重に比較することをお勧めします。さらに、フェザーリングはすべてのケースに適しておらず、マスクなどのツールが画像エッジの処理に適している場合があります。

MySQLパフォーマンスの最適化は、インストール構成、インデックス作成、クエリの最適化、監視、チューニングの3つの側面から開始する必要があります。 1。インストール後、INNODB_BUFFER_POOL_SIZEパラメーターやclose query_cache_sizeなど、サーバーの構成に従ってmy.cnfファイルを調整する必要があります。 2。過度のインデックスを回避するための適切なインデックスを作成し、説明コマンドを使用して実行計画を分析するなど、クエリステートメントを最適化します。 3. MySQL独自の監視ツール(ShowProcessList、ShowStatus)を使用して、データベースの健康を監視し、定期的にデータベースをバックアップして整理します。これらの手順を継続的に最適化することによってのみ、MySQLデータベースのパフォーマンスを改善できます。

MySQLデータベースパフォーマンス最適化ガイドリソース集約型アプリケーションでは、MySQLデータベースが重要な役割を果たし、大規模なトランザクションの管理を担当しています。ただし、アプリケーションのスケールが拡大すると、データベースパフォーマンスのボトルネックが制約になることがよくあります。この記事では、一連の効果的なMySQLパフォーマンス最適化戦略を検討して、アプリケーションが高負荷の下で効率的で応答性の高いままであることを保証します。実際のケースを組み合わせて、インデックス作成、クエリ最適化、データベース設計、キャッシュなどの詳細な主要なテクノロジーを説明します。 1.データベースアーキテクチャの設計と最適化されたデータベースアーキテクチャは、MySQLパフォーマンスの最適化の基礎です。いくつかのコア原則は次のとおりです。適切なデータ型を選択し、ニーズを満たす最小のデータ型を選択すると、ストレージスペースを節約するだけでなく、データ処理速度を向上させることもできます。

MySQLのインストールの一般的な理由とソリューションの失敗:1。誤ったユーザー名またはパスワード、またはMySQLサービスが開始されない場合、ユーザー名とパスワードを確認してサービスを開始する必要があります。 2。ポートの競合では、MySQLリスニングポートを変更するか、ポート3306を占めるプログラムを閉じる必要があります。 3.依存関係ライブラリがありません。システムパッケージマネージャーを使用して、必要な依存関係ライブラリをインストールする必要があります。 4.許可が不十分な場合、インストーラーを実行するには、sudoまたは管理者の権利を使用する必要があります。 5.誤った構成ファイルでは、構成が正しいことを確認するには、my.cnf構成ファイルを確認する必要があります。着実に慎重に作業することによってのみ、MySQLをスムーズにインストールできます。
