今天是第三天学习,加油!

第一部分 集合

一、集合

1.什么是集合以及特性?

特性:无序的,不重复的序列,可嵌套。

2.创建集合

方法一:创建空集合

s1 = set()
print(type(s1))

结果: 可以看出来创建的是集合类型的。

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAP4AAABLCAIAAADf863AAAAFjUlEQVR4nO2bPZarOBCFtSxtqLUMdzDxKPMqSJ9yn0kmmJxgtIF32AQvwJZKvyADBrrudwjcIIoq+apUEm7xz38WBw6GhzjcAxw4DjkgfRxMD3H7S+PAwfAQvwkjAGyA9AFTIH3AFEgfMOXD0h+0vGu7/3M+zVXiuoqfrbwT13rpD1rehPieDqmHemur70mbXglvQYhvIR+X+3b2jsvqh1nr42TnGn6O9iGdV8Qfo/Ku5uKaYaX0By1v6hWr1Xeh+pk77ENmerZXovNdZrp5O2djx7gmaXabSeoCfg76yztJdWV0YVjm46qxSvqp1oue0TbKj5YXYdfHf16DDeNKcueWHXIFP0v+DFoXx2QurhqrpE9Tfo5By1tm9swklZ8g/e3iSptt2iFX8ZOafaqoJv3WyWqV9OfiLEh/rstek4lbRXTGFXkynAengo8GTGtE8S1E96tux3SucVC5iU5P9lU/3fK8GtkPolsYl6ut79pSg9TVb+cwseOLclrXJv3gCo98++v4OUGXsL3Wgyv3F8xdNyE68/L81f71uD2lXySZm8KVVjB2eyU6re/KjDQ2uqwhn0k32YdMMllih3RW0L5X4ib1MH1wt/waeyXoTkKsoeVx2acnz0d/zUuTlNHE1UI/FNtfys/patTh3nOjbtFQycf1Sk+0vdX3Y6SfLEoqE6VTIWXQMuyjpzUizVw/ljcBpjQWZa/4w5TtajsJTXH5ryTamJstJEjtW+yHagFzFT+f9xb6PF3a1uMKrvYra/23N4mjjdi69NNL5S4jBUmSAHKPeBY8d21pg7z0XQLLzU6tcbmE2quZyrsSb+v5y/nZer4eV/Dn2h2eeMZZsMOTu7dV+guzyBI7vo5cKH2P6dKVzOK4nknI6C5JH5/Ipuf2c9n53IZmLa6w/fp9fT/IkkqrtMxN3WqVbFiDmi6o4fzyazax+QJpWtrOFTx+9h/HTA3dEtc4Tmvu6tTxSiVFKRf6YUk2PbOfpX19en4obDBGcd38vWH7Ld/mJn7Upe+GiltjpZNXdhvB354UHkl2qW1HjCMZKlL3ztunZdU/yyH34evf0FQa8pK4aNMuvzv82ncK7LgNPhmYTfphpv01/KQ7aYUdvNLGOknBvRKdCZz0HPrzte3f2gY7AG+84duGpXEFue0AruJnKz6u2mx27C83o73CLQj23Y/6qdZsXOm23SFcxc9WeiXuf/9fmc16JW740TJgCqQPmALpA6ZA+oApkD5gCqQPmALpA6ZA+oApkD5gCqQPmMJE+kYJIeR+7+P3tg+2h4n0J3E2/cP+yeyDrdlW+kYty3xGfV4lez8za99qifFwUjaUvlHzac8oMfFhQewtwYr9Jd0CDmAr6Td9wZdXg9W6xf/Lx/sj2UL6Vsu2r/bqUnjDf6OwCj4Zq6VvtSx9p666ieubnHRKja2WguCeVTr/hv8FO/4K+b+vsHXTAKj0FDiAldIvrmutlkQZUSmcSp+cCeaQKFm6ZqXz7f4X7FCdJpp9+3FY9Z6InbJ+PcNVpDOlVTpmsgm9dL6Viv1wrAaN3pM+sv652KnWr4ujUvBIbeOrucKjdv4d92M7pPzKPAO1/k9gpx2eJMNZW82atH1ZWCX9bKUrb6dembRK/+rL+p/JXvv6wUwQCylb63vRCVrrU017o6Xz7T4X7IRjNyp4/EWjZ4ccdH9Sdnyb6wsJfzIqJDJbJ1IbLUUwEDI3lM63UrNDrhX3o+aei3XteWHzGx4AQiB9wBRIHzAF0gdMgfQBUyB9wBRIHzAF0gdMgfQBUyB9wBRIHzAF0gdMgfQBUyB9wBRIHzAF0gdMgfQBUyB9wBRIHzAF0gdMgfQBUyB9wBRIHzAF0gdMgfQBUyB9wBRIHzAF0gdMgfQBUyB9wJQ/zhyzJc4PeeMAAAAASUVORK5CYII=" alt="" />

方法二:

s1 = {"",""}
print(s1)
print(type(s1))

结果:

aaarticlea/png;base64,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" alt="" />

方法三:列表转换为集合

list1 = [11,22,11,22]
s1 = set(list1)
print(s1)

结果:从结果可以看出来集合的特性:无序和不重复的特点

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAANIAAABHCAIAAAD9UI7lAAAEbklEQVR4nO2bu5njIBRGKYuGTBmeDm7mZFtQOuTOtgMlNDCfmmADyYinnsgXz/7n22CGkdEFHeCCvOIPAG9H/Pz8WADeC7QDDEA7wAC0Awy8R7uB5IPM9fd5N5/SrubiPKzdQPIuxNf4T9KwfLWhR3JNr8RcgxBfQj5b6plNXN0uQ099NsaxnrbiPKbdQPKuXvcx9BCqX4vrKTOt6pXo5nB1t15Pa1zYrlGLrop2rcV5RLvUM03rA0Wr2dQXYbPjXz+Diu1K5oyaHdJUnEe086e6HAPJe2bGzgym36BdvXall1XtkJbiPKLd2j0K2q2F+5pEXdbYaWu1ukdph6HHlIv4nWieMshUuu/lenTnLg6yBdHRWL/qx49Mf43qD1q3sV0ul3qQ8Sv0Q/1yAXv1zEmYn58l/eAWu/z1bcV5gXZFknk+zGqDsdgr0RE9lLZ+7/ipsfezt1MzT5mM4KQer7uD63sl7pKG8Qf3kW/bK+HvBOPnt71dZopkuvVtXQsvbfJCLfRD8frW4nyrdkliuzA5OwN8BpKhUlNtnhYZ7dJ6/ArvyaiNfxhH+dJufVe7XldqFR1qrC5e7teFflhcNJuJ81hud/gQKDpAWtYu/VO5W71FMBnQuVtMi+yDjH9BXjs3cHOz8t52uYmkVyuZ1kJ795Y3F+fBnWw09LfsZHOf3avdxlG+pR7X+1u1m9Fdmrlubtc05WjqkqF7/WzXTJyHz+3mQZNkDKUtRRriXl3CnEN3ft7gpbqrA3pelMdtxNoiO6841mZypj3tsnbc3yxOma9hXNSo0A9bdqZNxFnhLUVymLKsndPU5bPpQpDdLs0fTxa7ZFQtbbus9TSV1Ltop5pVPy3B7ofb37CqtMlb2uVf2uVPoF7766CeqSeDjXmuH1aubytOhq8C1H8b4Tae1trSifz1bG3XQDfW14ANxMnyDZToPKIGwbka12vv1XaNEwP7W3n+OPHFJ8AAtAMMQDvAALQDDEA7wAC0AwxAO8AAtAMMQDvAALQDDNTQzpAUQojF/1/BgFZCCCG530SBDOe1MySbM25GK4jXIOe10ypnnVaFr8wUyjczTa0inl9L5fnwAC/VtXOPP3rYpfK9N5vnLkPSzWSlcmjXJhfNdqWHfVICTcGC6WorlZ+/I7iED9NORQvoNKuVys/fEVzCae0MyUzOfpF2cWX53UJQno8P8HJSu/KTv1o7QzJbU1quVXuHO/87NWa79y2y3k2zumfKcYLSIp+V21lrdzlX6Y6gNh+nXZS4kV4th3btcZ122RkpKtdq5+ur8LTZ0M2d2+XLoV2bVNHOf7D+2wJfqUL5vnx/fM3qofRiOfYTjVLjqwDTQz/2dE+/LVuo+fxbEXANvF98Kp2CgF8Ovm8HGIB2gAFoBxiAdoABaAcYgHaAAWgHGIB2gAFoBxiAdoABaAcYgHaAAWgHGIB2gAFoBxiAdoABaAcYgHaAAWgHGIB2gAFoBxiAdoABaAcYgHaAAWgHGIB2gAFoBxj4B7N6c1lbvhFQAAAAAElFTkSuQmCC" alt="" />

方法四:把字典转换为集合

1.把字典的key转换为集合

dict1 = {
"key1":11,
"key2":22,
"key3":33,
}
set_dict1 = set(dict1)
print(set_dict1)

结果:

aaarticlea/png;base64,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" alt="" />

从结果可以看出来,默认是把字典的key转换为集合了。

2.把字典的key转换为集合

set(dict1.keys())

dict1 = {
"key1":11,
"key2":22,
"key3":33,
}
set_dict1 = set(dict1.keys())
print(set_dict1)

结果:

aaarticlea/png;base64,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" alt="" />

从结果可以看出来,使用dict1.keys() 和set结合,也可以把字典的key转换为集合。

3.把字典的value值转换为集合

set(dict1.values())
dict1 = {
"key1":11,
"key2":22,
"key3":33,
}
set_dict1 = set(dict1.values())
print(set_dict1)

结果:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAQQAAABNCAIAAADPSo1NAAAFd0lEQVR4nO2bMZbjKBCGORYXao7hDiZeMp9C6ZA7mxsoWF1gny6hDVSGQlCSsJElpv/vOXBjVKrC/FCU3Or2y+KFF163X1b9JzMB8JOAGAAgIAYACIgBAOJcMYxW3+1w/H0+TStxteJnKS/GVV0Mo9U3pb7nl7bjeu/B3pM+vVHBglLfSj+a+76OjmuwD/euj7OdNvychof2XjF/nMm7motrm7piGK2+mWf0g70r029cMTx0Zqx7o7owiK7btnM1DoxrnqxdtUnWgJ+j/QpO8nnlrCDUfFwb1BRDOvtFX3kfE/TzJP4yln+2QcW4kvW15oC04Kfkz2itqNJcXBvUFAPfFnKMVt8ye25m4fkbxFAvrrRb1QFpxU9ulmbRmhhe2NBqimErckEMW4P43HD8aaRzPlnU8e45J458CHiuqb6V6n6v23Gd7xzle6qzs33Tz5fQpwv7UXQ74/I5+t0O3CB39ds7zOyE5J7nx8k4+HQl378dP2f44bi3dvTHhh37202pzj09f/YPcX1SDCLJjhaf4SJ990Z11t6Nm3i0/MDE3rOBGx46We0SO2z4ov69UTdtx/mNv+T31BvFqxbLWbU/roE8oVt/bU9Wlo4zV4VxEPs35ef86WLAg+fO3Bbiycf1XLB4/zmuS4ghOe6sbK9+XnJGq+NRI2tssuZGVi44zEvdYoVbvplXxLWqRVFc4UtalAU30w+WQ4vjsJr2tOInXSuMeXpoXo8r+rQ3+lH3zPBy0XpRGF4XQ/qRPIgsjUkWidwtKE2624F3yIvBL3K5Haw0Lr/o9mYjg1+Jt7S9OT9L29fjSrLBimJIi7t7qkm5a0vFsHOl2WMn5KM7xRBwXXoi2h0XLVTOdsmC8okV99p+7mvPlVPX4lr0H6ruDAshJhmbdIBOHS2dxHEu6zqeC7KD3ebiF9Kq+dC8lSaFnGGaMrl4SVzTNJ/mV7eX5+IiTm5hHPasuFf2U3rOwNtHoZi5iOsWrk36H/gEOvFsXQxePP70lm552ZJFuDxJV5IVaK30MU1MPNr23luybHpKovybrz+xqTTkPXHxrl2+Nv2scUV2fHlRR2aTcdjo34afvGonVAulsj5blHujOhc5GXGlH+rVf9IcVRteeypZgb1xRevfCbTiZykhrvUdb7ySGHjxpxbRc4CzfpS2GVdaNDyFVvwspTfq/s+/KzsexXUpMQBwJhADAATEAAABMQBAQAwAEBADAATEAAABMQBAQAwAEBADAMSRYhisVkqp0n/Lbh1nlFJKt/abBXCgGAarf5wOAs5ADs1xnBic4VqgXUItF02p/fW7Cj8uFtp3wx3lpqT2OHzQAp8Rw2C/LPvnDL9lSO0v4CflwoTUXoYzQamD1V63UjvE0CKfEcNiZvg/pfYqN93TvtesjTat4L/Q/v4dwQl8Kk1afJTPiKT292/6rhiWoiU/pfb37whO4DAxDFbnZ7b0gXhBCQeJYWlsh5arhAM+ykFiyM4XqeZYsRZ5vBgGq7OW0nZnfl5ZuW2O3BnyUyE+Z263F3GwGAp2NdRW2+OkM8NRU/ZIMZTldzgztAeqSbstRwcC6zbbIYbWuOZzBmdePERIycmivdh+/MwuuC21QwwtcqgY2HR44QFu2WTihvhEF9rL7M9HfAYXbaYdp+cmOfKHejRVXpsTb/9+4jT7b4UNTuSaP+GW6pet2AdNck0xAHACEAMABMQAAAExAEBADAAQEAMABMQAAAExAEBADAAQEAMABMQAAAExAEBADAAQEAMABMQAAAExAEBADAAQEAMABMQAAAExAEBADAAQEAMABMQAAAExAEBADAAQEAMABMQAAAExAEBADAAQEAMABMQAAAExAEBADAAQ/wPQ+W6L2pjDaAAAAABJRU5ErkJggg==" alt="" />

从结果可以得出,使用dict1.values和set集合,可以把字典的value值转换为集合。

所以从以上关于字典的3个例子中可以得出结论:

结论:

1.字典转换为集合时,使用set(dict1()) 默认是把字典的key转换为集合;

2.使用  set(dict1.keys())   ,也可以把字典的key转换为集合;

3.使用set(dict1.values()) ,可以把字典的value转换为集合;

二、集合的操作

1.集合添加元素

add()
一次只能添加一个元素
s1 = set()
s1.add(123)
print(s1)

结果:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAALAAAAA7CAIAAABUopcSAAAEBElEQVR4nO2bzbnjKgyGKYuGQhk5HWjnKrw97LObDryhAzfBLOxgCTCG2I6Tme997iI/REeCD0ngucoDwFBXOwA+CwgCCCAIIDhbECPpjtzJf+QCviWuZj9fEMRI+q7Uz/SfprE82lGXjBmMWiwo9aP04wvmVnJ2XI4edq+Pk502P1sFMZK+m6enjjplhi2PHjozL4NR/RKw7bftfBonxjUtWH+IIFr9bBNEqgBL25vAmkVDeYfit9/BgXEl+eDICWnys00QPD3kGEnfM3kys1H+BUEcF1c67NAJafGzTRBbXq4IYivgZ+IJ3UlvvbfmHpU3R91c83h47qFFRex/y3ZsHwaL2qd6muybYfrJ/G1kX0RXGVeo2R05bpC7+hMcZnaWYs/7gGQeQonJj2/zM167Ii/LNslasq8R+h2M6ok6Y4XfvDlir1kX7R46UX1ih02EGD8Yddc0Ti/CT379YBTv0uOZrY/LzZ7Mf/q2vWCsjWCurszD6vhWP98kiKS1KaTEsDackbRc7NkaW7CMIFI73OA92ZHxi2kHl05STXE9R1oTHQU3S0Z4W5iHYqmq9rO1h3j58B0diMuCSL9aD5il9GQT5P7EXDI6cnxAXhBhU+YyWWtcIUkMZqOiF+Jt/bzZz+ZTRrRdak4Zud+2CqJyZ9TYCfNSK4gF26cdUnVc8za11Ceb6vwMUe3nC/cQi9CSyrTWVKZOtC6krMG253WUNWWbm2ApMVMjuVUyljzvfaY2t8Tl/dThFtPMc4OtLvDKPNScbqr83HVTmRxBy4IIAgodTZrWsi338vMkdSc7ptS6e88EpGkI3s6WzTAXlPDi9keaSkOuiYsP7fPn9ufZR9iZZ1IcmnLzsDG+yc/3Ptw6/kYyHAq892u3cudTG9dIt0sv6Sv8fPPTzugUdwTinuCqB06bcU2b8vLnYdt+4vE3EEAQQABBAAEEAQQQBBBAEEAAQQABBAEEEAQQQBBAsE8QjrRSShX/nWUD1iillL76fve/Zo8gHOnDtLBgDSRxIXsEYU1OD9ZEH85pREW5hH8sFJA3C97DgYIIKyyW05pltR3p59o7ui0ikKkGgriSwzNE9KElkf7Dt/Ew9haCuJLTBRG/zfcH/HMI4kp2CMKRzqxucTnzeogM5e2C9/CyINb3+pogHOn4m5VzpjXHHWVBG/syxHbJYINXtz3rNWcLyBCXcXYP4b2vKQJoKj+FNwhCFBdHhFPGJ3OGIKJrJnlXccM9xEezUxBrV4+hU5zaRgb7X/CzF5joKK9l38OtebmPfbgFOVwJHn8DAQQBBBAEEEAQQABBAAEEAQQQBBBAEEAAQQABBAEEEAQQQBBAAEEAAQQBBBAEEEAQQABBAMFftTWSPcyc2YIAAAAASUVORK5CYII=" alt="" />

1.1 看看这个例子

s1 = set()
s1.add(123)
s1.add(123)
s1.add(123) print(s1)

结果:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAANkAAABQCAIAAAAbY0cxAAAEgElEQVR4nO2cO5LjIBRFWRYbMstwB5OTeRVKh9w1yQSTK2EDXdoEE0hG/PSxjOyr1j2lwB+EAB/ggdQt/vyzPHggHOLjJeDBoz/E9ZfmwQPhEN/f344QAOgiQYEuEhToIkHhPS52Wt603f867+Yo9TpGOTe72Gl5FeKrP6Tu5lNbfcvStEqMOQjxJeQdvrlS9q6X1Xfzahn7fA5Qzm0udlpe1ePiVt+EahfOsHdZqGqrRDPWwTTL+aCxY716V5oqLh6inFtczOUzerlLGTXq+yBui/TtMahYr2x0qdkg+OXc4mI4KJbotLwWBvxCt/sJLtarV56saoPAl3OLi0sXnnBxqQ6P4dZHoo1xzqhrEspYfRvim7Bl7V1G0U/zez4f0/jEUbAhGt3nr9r+lOHbJP+odivr5eOzm7ZhhmFRv3yBg3zGwC6M+bJ28HNlOT1+OfdwcZJsmojD56jXtko0Wt+UcWGThTF48DpYJ9q7zPp6lk/wG0TpWyWuUnf9C3/Kb9cqEa5D0x91fb3sUJLh0pdlV4JQLCjqRDtMpj9EOd/qYhZBz4ztXouQTsvYsyG3wJWCi3k+YYbXrH+nL/rxYG6v4Kl6PVIaleyzLM59/u1MO8zOudjl3BYvbt6sSja65l3Mv5pu62AOzbp+6RLDHH3TNkxQdtF38dL4/Wy9/JDTqoXobaa+z35+jHJuXEcng8SadXTp3GddXNnP1uTjf5K1Lo6YJo+GV9drGJyMbrL+vP+4iF3OzfuLY/fKopCptUte7mcdiuMY04SxSBBTL3b9cU7v1ytLc/Q4YTlXiMOeqZdz/UJqdnB99O1JtybaYc26GLecFe67ZPs78y56d33gnM8jxcXaeHo2V2b9b27R51zgrtStL+2Qs2qHGdy/uPyNs8qrvKZeYdKmvCn2WN1H+QwtGW0LlNphIT1+OT/xbET9+yt+2eucm7rHsD9r69Xpy0fvdqKW8yPP6SRbJDWI9v8+9RzAYr36IeHjjymAlpPPjBEU6CJBgS4SFOgiQYEuEhToIkGBLhIU6CJBgS4SFOgiQaGGi1ZLIYSY/RuYJzBKCCHkp2+UkXfzuotWy2oajhhFG8/G6y4aVVLRqOTDYfAUyQgafhzJV86W/GCqu+jlikwyahTNavnQzurL6F88wNLF07HTuJh8aHQ03/pv02TBW7p4Ot7kYvq2HAuGn9PF0/Gyi1bLglizJpVVTDIq50t+MC+6OD3CTblotUy/mdjEMarePhE5ADXGxeU5Okg8OdgFS5ohB46L5+I98aJzbs2sy7XLqXmbi9FsbrXmOpok7OdisnMd70FeuL9IUqq4OHUjxS9I+tVJQPB/5oq3Y7hwOSE1no0YTKv7bARNPB18ZoygQBcJCnSRoEAXCQp0kaBAFwkKdJGgQBcJCnSRoEAXCQp0kaBAFwkKdJGgQBcJCnSRoEAXCQp0kaBAFwkKdJGgQBcJCnSRoEAXCQp0kaBAFwkKdJGgQBcJCnSRoEAXCQp0kaBAFwkKdJGgQBcJCnSRoEAXCQp0kaDwH3XS23l77x9fAAAAAElFTkSuQmCC" alt="" />

为什么两个例子的结果完全一样? why?

这两个例子的结果完全体现出了集合的特性:不重复!所以第二个例子虽然执行了3次 s1.add(123)  ,但是结果只有一个 {123}

2.集合批量添加元素(迭代添加)

update()

s1 = set()
list1 = [11,22,33,44] #update接受一个可以被迭代的对象,也就是可以被for循环的。update相当于调用多次add函数
s1.update(list1)
print(s1)

结果:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAN8AAABSCAIAAABbtZZ9AAAFMklEQVR4nO2bO5bzKBCFWRYbapbhDiYn8yqU/uQ+k0wwuRI2MMebYAJhxKv0ArVL7fsdAndZLgp0gQKpxd//WhQUnkW8PQIUFKpAnSh8C9SJwreI218aBYVnEf9FOAA4AXUCvkCdgC9QJ+DLD6vzqeVd2/Pr+Wmu0q6rxOlpV+dTy5sQ31OR+rl8tdX34ppRidmDEN9CPq7TgZ6z22X1w7TGOPm5RpzOPqS4NarzqeVNvcKx+i7UuF5rpfGjEsPcKjOs++HGie2a1DN0u+sXiPOpvx62ce4s5Wj0+rAzahb0i7R38j+vQcd2FTNQzw65QpzeT5M644mzxlPLW2WZqAzN36DOfu0qL+vaIVeJs1Gda6EQ6lxr1WtKDhntYJwz6palRFbffZ4U9/WUr8xZ1PBn2Y8ZwsVJiiIGPflX4/QT/23mP2ndxnaFPO+ubewwDvU7BBz5mRPEOHcs+iGssPXrrxPnueokKRaXNDFPRvaoxKD1XRkXd2Kc3Uefoz2pfchiPij8RHcluX5U4ib1c/oQfvLHjUrEe978Nm9vl/WR+Kq/1tUTpXRRqEQ/kNdfKs7xPeoscvOFFSEIJeapZao87y1ST0WdpZ/Y4a2YA/IP05yxdC6xq12vK43KTnlWV8zw50I/LK7UF4mzMe88fHiWHbwtq7P8im5VtPIW00OtCr+y37WNL6irM0wDtTl+b7vCtDSqlSxwob177ReLs3XPnk0kW/bstd/uVefGsbjFT7hJW9U5Y4Yyq97cLj+BGT0UI/z8uZN7nD327NkQLLIZaldUtmSvqtJ8yAxxThNl66vTw5wJTDuhtZV9Xuacq+Rze9rl3LRFW5yAX6OdVBvRD1v24Jzj7HHe+QqxupK6NXUGNYeUvFx9qhvD+efFCluM0aUNpnORmqUeQ7Tesxr9uh8+fP2TuiqbvKVd8aVD/UjudZKQ+PE9mRxB1Pph5fprxNnjWVEb/Z8JhS22c456LnI+W9vlZ4i3wT7O976jlB3Q9CA5j3zXGw+r7Zqmjbe/kME9TrxBB/gCdQK+QJ2AL1An4AvUCfgCdQK+QJ2AL1An4AvUCfgCdQK+dFWn1VIIIRb/1wjsxighhJDvfuz5Bjqq02oJYZ6GUR+oz47qNCoWp59HRT7sKfvxWol3uwj7kRrqg46ybyTuiNgPZW+s7pKcpE6rv2blRZMqZT9AuIuZC8reUk3FFWXfiFHz0LRahoFK2aHOjurMujL8Sdm7VLrFvhMqk27NsI1Olo25fwi7gzq7ruzZV/VFnLK3V9rlXlotpbalK8q+nWKU+n6g7OVXH0E/dU63bMcX5A/2cKI6X/Hlrij7cTYN3i7ddTF6qbPawdRRSMcjkvPUGbZVxXxWtx/Fall1U9qN+rTTuq5zZ73v0uR+3b6Ls9QZbfkTV5T9IDvWlU88UvqpvPO8Ge4Uz9PsnqIMbT/EvpQHeWcTv3HPfmIVWVKpzaod6myg5bzTqIOJKLXeZfbD/t02de72nz4smLuFskOd7eqM+u/Ao5B9vR87ipVB2A9tKeKFvBB7at/nv8gQ4lFaTRs+b0vkOr8F4vv2WCf2e/T42/w3deulYfIGHXWsAv8fDRN1AlAB6gR8gToBX6BOwBeoE/AF6gR8gToBX6BOwBeoE/AF6gR8gToBX6BOwBeoE/AF6gR8gToBX6BOwBeoE/AF6gR8gToBX6BOwBeoE/AF6gR8gToBX6BOwBeoE/AF6gR8gToBX6BOwBeoE/AF6gR8gToBX6BOwBeoE/AF6gR8+R+UKe+Z0hJBXgAAAABJRU5ErkJggg==" alt="" />

3.集合A中存在,集合B中不存在

s1 = {11,22,33}
s2 = {22,33,44}
s3 = s1.difference(s2)
print(s3)

结果:

{11}

4.集合的对称差集

s1 = {11,22,33}
s2 = {22,33,44}
s3 = s1.symmetric_difference(s2)
print(s3)

结果:

{11, 44}

5.difference_update 的使用,这样就不用定义第三个变量了。

s1 = {11,22,33}
s2 = {22,33,44}
s1.difference_update(s2)
print(s1)

结果:

{11}

6. s1.symmetric_difference_update()使用和difference_update类似

s1 = {11,22,33}
s2 = {22,33,44}
s1.symmetric_difference_update(s2)
print(s1)

结果:

{11, 44}

7.集合元素的移除

方法一:discard()

s1 = {11,22,33}
s1.discard(11)
print(s1)

结果:

{33, 22}

方法二:

remove()

s1 = {11,22,33}
s1.remove(11)
print(s1)

结果:

{33, 22}

对比:discard() 与 remove()的区别

s1.discard(1111)  #移除的不存在元素不会报错,最常用
s1.remove(1111)  #移除的值不存在的元素 会报错

方法三:
随机移除一个元素
s1 = {11,22,33}
ret = s1.pop() #随机移除一个元素,并打印被移除的元素
print(ret)

8.集合的交集

intersection() 与 intersection_update()
s1 = {11,22,33}
s2 = {22,33,44} s3 = s1.intersection(s2)
print(s3)
s1.intersection_update(s2)
print(s1)

结果:

{33, 22}
{33, 22}

9.集合并集

s1 = {11,22,33}
s2 = {22,33,44}
s3 = s1.union(s2) print(s3)

结果:

{33, 22, 11, 44}

第二部分:函数

一、函数的定义

1.什么是函数?

函数是组织好的,可重复使用的,用来实现单一,或相关联功能的代码段。

函数能提高应用的模块性,和代码的重复利用率。你已经知道Python提供了许多内建函数,比如print()。但你也可以自己创建函数,这被叫做用户自定义函数。

2.为什么要使用函数?

以前我们写的python或者bash 脚本都是面向过程的。即:根据业务逻辑从上到下实现功能,其往往用一长段代码来实现指定功能,开发过程中最常见的操作就是粘贴复制,也就是将之前实现的代码块复制到现需功能处。

这样的缺点很明显,代码重复性高,可读性差等等。

3.函数的定义

定义函数,函数体不执行,只有调用函数时,函数体才执行

函数的定义规则:

  • 函数代码块以 def 关键词开头,后接函数标识符名称和圆括号()
  • 任何传入参数和自变量必须放在圆括号中间。圆括号之间可以用于定义参数。
  • 函数的第一行语句可以选择性地使用文档字符串—用于存放函数说明。
  • 函数内容以冒号起始,并且缩进。
  • return [表达式] 结束函数,选择性地返回一个值给调用方。不带表达式的return相当于返回 None。

函数的几个名词解释:

  • 函数名:函数的名称,日后根据函数名调用函数
  • 函数体:函数中进行一系列的逻辑计算,如:发送邮件、计算出 [11,22,38,888,2]中的最大数等...
  • 参数:为函数体提供数据

语法:

def functionname( parameters ):
"函数_文档字符串"
function_suite
return [expression]

默认情况下,参数值和参数名称是按函数声明中定义的的顺序匹配起来的。

二、函数的返回值:

1.默认返回值

def A():
print(123)
return #不写return 返回的也是None R = A()
print(R)

结果:可以看出来默认返回的是 None,不写return 也会返回None

aaarticlea/png;base64,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" alt="" />

2.指定返回值

def A():
try:
print(123)
except:
return False #操作失败会执行except
else:
return True #代码执行成功后,执行else:下的return R = A()
print(R)

结果:

aaarticlea/png;base64,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" alt="" />

3.怎么利用返回值

一般我们使用函数的返回值去做一些判断操作

def A():
try:
print(123)
except:
return False #操作失败会执行except
else:
return True #代码执行成功后,执行else:下的return R = A()
print(R) if R == True:
print("OK")
else:
print("ERROR")

结果:

aaarticlea/png;base64,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" alt="" />

4.在函数中,一旦执行return,函数执行过程立即终止

def A():
print(123)
return 222 ##在函数中,一旦执行return,函数执行过程立即终止
print(456) R = A()
print(R)

结果:发现没有执行 print(456)命令

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPkAAABiCAIAAAAdjOJHAAAFZklEQVR4nO2cO5ajOhBAtSxtqLUM9wqeMiezBdIhd/Z2QPA4L/dhE54ALCQk8Qc3U/eeCdwylqs0F1GSOaj/AWSgPh0AwEngOkhB/QKQgXo+n8/n8wXwt4PrIAVcByngOkjhNNcbq++2Pv57zuYqeV0lzqUsyGuL643VN6W+23/aNuNH1/YeHVMZ1feg1LfSj8v9dxydV20f5dYY236uEeerfmgXlRdPadKhpvJKs9r1xuqbeSdX27sy1XQOiaGsjCr6MSqL6X5+Ggfm1bpY7ObQBeJs7FcfpO9VaTPnYTqvBCtdj+XOhuIfY/rT40041sM/r8GOeUWz454DcoU4c/E01mZPwlReCVa67k/qKRqrb4kLYmLa+Btc3y+v+LBdB+QqcfrddhaNuT7zcrTS9anEMq5PjdH7cuFWAkXpCjUdXtraos3P0K/z1LdSxe/xfsrCHRwUY6qwbf+maj/SvTvoP8huZl6uPr7b2u/QD/XbBez10xfWfm0ajYOrJdLHXyfOFn/dWVnbuJJ9xtXpplRRviNvjz/I9SzR5SZcHgVnZ2VUYe3dlEEy/lrEe+2NS/3Q0VwV9eONTnB8ZdRN26Z94T7y+1UZ5a/3h9LMz6vuIum++mvaRa8U9kLNjEP2+EvF2b47GPA+8tLcBudGOq/3fNQef7br0Upi5NrntPNprA4HpevNczE1cPmlejtRDean4Yt2Phtb7y/Kq/8/GOyXTdYGXv2aHYfRmuQqcXafzYx5vB4dz6t+aP1YXa+v3qwdbIiOux6/lR8jr8aITvHUV3Q1zN3W/gFp190Ulbr+LM3LTZmVmaieR/Jd2n65OJe2j+dVGVWs34cZXkRm7MOkPrvU9ZnzxJx++lpwpus9ZRGvRmbn1U0zpS2i+eKM+fJnxzmvPbXPOJbXlnl9cBpF1VJubRrHsdTRsI4sC78W9NZMk1NXX/O069GpGqa/oL9eiTp4SV6vV7tQHr04vOeOrLuZcZgzX/7kOHP76357k9kGHOR16z+rb6bc6XfT6IvHXXfnhlsYxdej5GK//3hUS0Tzx9imwevlnRvaVi7armdTdRWOe/H1b9hVnPKcvPxDi/Sm7Xt3KOjH7bvpoNtoHCaOv0ac/n5XZp8tt9/tzbmVUUUZBPmpe7/2/300WKfP/y1tZ+bmFcxeH+AqcS6lzytxvfrUfY6DLbw9CPa/P3Wf02Re8W7aR7hKnEupjLr/81/6esU9vSAFXAcp4DpIAddBCrgOUsB1kAKugxRwHaSA6yAFXAcp4DpIAddBCju4XprBLZa11eqN95bfrK92TxFcny2uO3kD10vTi1xb/da6tl+29j8554keAPuxfV4vTaBtaYMp2707PMwgO5zL/q4P/0yXK7l2gKPY3fXhmymla6sxHc7mSNdrq4fvlIaVKXyIw1wfm7u9JSvAWRzj+nSRwtoUzuYI14MivbaWfRj4CeziejCHhz8tuW119tfhw+zyW5L/U2i7+vTwnvec/DkV4By4HwakgOsgBVwHKeA6SAHXQQq4DlLAdZACroMUcB2kgOsgBVwHKeA6SAHXQQq4DlLY657e8J71Ze0AZ7De9cwzjxa3A5zDatezzzxa2A5wEutdzzzzaGk7wEnstDZd+ngvVIfT2cP1xDOPVrUDHMlm13OPglnaDnAw21xHdLgOW1xPPvNoRTvAGWzZX08+82hxO8A5bNlzTD7zaGk7wElwPwxIAddBCrgOUsB1kAKugxRwHaSA6yAFXAcp4DpIAddBCrgOUsB1kAKugxRwHaSA6yAFXAcp4DpIAddBCrgOUsB1kAKugxRwHaSA6yAFXAcp4DpIAddBCrgOUsB1kMIfBk3Bb3AIjcwAAAAASUVORK5CYII=" alt="" />

三、函数的执行顺序

python是从上到下的顺序执行,但是函数体的内容,只有调用函数时才会执行。

aaarticlea/png;base64,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" alt="" />

三、函数的参数:

1.普通参数:严格按照顺,将实际参数赋值给形式参数

2.默认参数:必须放置在参数列表的最后

3.指定参数:将实际参数赋值给指定的形式参数

4.动态参数:

*  默认将传入的参数,全部放置在元组中,f1(*[11,22,33,44])

** 默认将传入的参数,全部放置在字典中,f1(**{"k1":"v1","k2":"v2"})

5.万能参数:*args , **args

注意:

def send(user,content,xx):
print(user,content,xx) send("user1:","hello","ok")

结果:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAPQAAABJCAIAAACFGZwCAAAFh0lEQVR4nO2cO5brKhBFGRYTaoZhBzd+ZB6F0ibv7M5AwdUMNAm9AAmKr9CvbdU6ezmwJUBV+Kgoyh/x+KPxwIPlQ0wAMAXiBmyBuAFbIG7AlovEPWr50sM1Y7+Tu/h1Fzu3ss2vdnGPWj6EeNqH1GO99aBfSZteCT+CEE8hf243/1f7Negfc9RGO8497JyGH+msIvYYlTc151eRRnGPWj7U4s2gX0L160Zn5q5XovOTYrr1cT6NC/2y4utOE80N7Bz1lzeS6srowo2X9ytPk7hTNRevTdsofz8shJMbv7wHJ/qVxL8zJ+QOdpbsGbUu3nU5v/I0iZuG7Ryjlo/MGpcJDBzEfZ5fabNTJ+QudtJhZxXVxN2+4DSJe82TgrjXJmVZEFw23xmXbMlwtbKJF3WJ5mriKUT3XR/HdK5xkF+JTtvxVW+7zGej8QPvGv1yOe5LD3RAaurTGUzG8ckxzS+TeXDpQb79fey00M1ir/Xo0u6G9echRGcWy5f2/SniLpKsIOGeJrj/eiU6rV/KBNbTDQR5TiZi+JFJNErGIdMRtO+VeEg92ieuy/fUK0F35bFK2v0aZkvmS3+ti4+ks8TUwjwU29/KTns2mnBvuVGP6GbI+7UEINf+WnEn6X9lOXM6o4xahrMwj0bEl5up8obahqIoAsVPbMSq7co3+eUnPSpjrS73JActzkM1zbiLnXPfwpynm8i6X8vZxpx7d9E0KkzWxZ2eKk8KSRuSmzh3iTkteemBNsiL2wWh3Aqz1S8XFHu1kgFX/N16/HZ2bj1e92t+2VotideFhmpJru9WcTdGgpZxfD7XKG6P6dIdRbNfcyAxuksCxG9ExM+2s+14rvxX82tT5I5ulCTjKW0o0wtvFWWYC5qO5nNko7ManHwaYzeRa2mJX6OnKZPLbvFrmuzuthr+l2BRFGthHloi4ifbWapz0+NjoVgX+fXwfZf2ez6hTK5UF7e7GdxuJl1islty3z1JD5IIUdvaTxO5GaTunbXzyKqfkxb35OtvOFTqcotftGmXr6UuNZxgHFcOk8GwyTystL+HnbQqVaiGlcrQJMj2SnQmMHKafumLU+d/Ehnspjd9anUmrX4F8ekN3MXOrXi/8ivS73wrMKqsnUFQh37Xl4RW/UqLXG/hLnZupVfi9d+/4oqEr7wCtkDcgC0QN2ALxA3YAnEDtkDcgC0QN2ALxA3YAnEDtkDcgC0QN2ALxA3Y8nHiNqrxd/t5Bq13dC9d9KAxFfbZCTbxOeIetBRCCCF268mozd1tl7RX6fgp7LAT7OFzxG0x6tC7vq97qddBY3ZcEZzJLcQ9aCmEbPmyMcQNPI1/7UCX0XBVddmEhUjQn1n+54YmHvPCH0v2FHG7pCLolNhTv2jxeHmcPLn2y8jHczFQpjFyR2+ze2lUoB/fbNDSnaDPbRutpTLpsNkjm0hvvFV7KhfNHK+Ok6HQnkwgZH0ZB8U9aJkNqcOsXtdekt/O16LwuTk3tbNkT+Wi6fH6OCml9m6FgbQv5KC4p6m47EbQrKbyjl4k7oo9lYuuLiyr1tbtUQrqvpITxB0clsu/g8jSu/YWcVfsqVz06si9ahg4RLu4oy3kEoHiLVsmx03SkrrOUr3srpbk9wAH0pJQjKvaLrYnI7dk7mAXzaXAoAIxr6rfca0k0AI55xP0QtvkbPB+N4p7MdGvHvliTVL5yeZORVP9ubaYm7RfDJF68C8Qv8/n0+rcAJwGxA3YAnEDtkDcgC0QN2ALxA3YAnEDtkDcgC0QN2ALxA3YAnEDtkDcgC0QN2ALxA3YAnEDtkDcgC0QN2ALxA3YAnEDtkDcgC0QN2ALxA3YAnEDtkDcgC0QN2ALxA3YAnEDtkDcgC0QN2ALxA3YAnEDtvwPXVC7hTlpxzYAAAAASUVORK5CYII=" alt="" />

2.默认参数:

注意:默认参数必须放在参数列表的最后面,例如下面的xx = "OK"  放到了参数列表的后面

def send(user,content,xx="OK"):
print(user,content,xx) send("user1:","hello","FFFF")
send("user1","hello")

结果:

aaarticlea/png;base64,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" alt="" />

从结果可以得出:xx = "OK" 就是默认参数,如果给xx指定了参数值,那么xx 就是指定的值。例如:上面指定了 FFFF

如果不指定参数值,那么xx就用默认的Ok值。例如:send("user1","hello") 这个没有为xx指定参数值。

3.指定参数:

def send(user,content):
print(user,content) send(content="hello", user = "user1")

结果:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAAOkAAABPCAIAAACBEHVHAAAFFklEQVR4nO2cPZajMBCEdSxdaHQMT7C5Mp+CdMgn2xuQcAMuwQaAaP0iMDbUvvqeAw+IVksuWq22GfX4Y/niC/GlRkIwoXYJKtQuQYXaJah8QLuD1U/bv7+fT4MyLhQ/9zIc0+5g9UOp7+ml7VBu3dtn1KYzarWg1LfSv3DT++5x9fa3fdXHyQ6Gn2P/q51Xwp/WpF09oN3B6odZnO3tU5lu26fE1HRGNeuY22bbzt1447gmbTWnaQLAz8F+rU5KXbU2fV/t1m4s1pxpr41Z5b7gz134JwYnjiuKXmdOCIKfOX8Ga9M31W7tyqCbYrD6kViAErf1/6Dd88YVNzt1QlD8lGZnFZ2n3S1HM9rdGvMSzl0m3bQu0dH+UjIlPfKTkHmS+laq+SnbaRvX2Et+VGMn+6abLpnPBva90VWOy+WXT9tLg9LVb+ewsLMmpjJnjebBrd3p9jh+Tsj9ZWft4FJeGTdP126WaNnytwteVOiMaqx9mnaUUyz3HOK9GGf/q6NYEtkRn5nXvjPqoe0wvXGX/IydUXKfHoqgflz97Mnc9de2tkQqKVzNzEO2PZSf09lgwlfPW/NwNj+n3WjHUFhrnIwkg9X+IGdrQlupiciXQaZAEsSP8M0Ub0q1lF3jWlq2Jqhbba7FIv/LzkMxB0Dxc742M+diFAfy3cPFwqDQWNZufCo/ZrGmR6El1cWcMzxtLxuktetCSGp92DsuF9I6s5F9Fsa79zicn7XHj9QZghuips6Qunavdivv4xo7ay5Vqd2Vtomz+epxzWGjtU10/38int3bz7rjr8Td4PaNsqjcXi1wKPY112zFy8PaRuZSYg+xGVrWHGPan23lDOsCOo6JPHLPuMZx2jgWg/cSC7JazMxDTTy7s5+5+q487n238Or3alG9rKxdp3W3UYjXteRmdr08Wruj+7u0KR5HoXVtO+ftbNl0c0bh3nz99U3FQ64Zl2zapIuMS/XDs+PqRNozG83DRnsMP2U9J1NHeqnO8Crnf3/m7UMz3yG9n9pxedHlAlD8rODzvyMLSk5n4NVfr/rdyea44urPJaD4uQ1/A0lQoXYJKtQuQYXaJahQuwQVapegQu0SVKhdggq1S1Chdgkq1C5BhdolqNxau60pPpK80Ft74DGknPHKTsnl3FO7vdVKKaXUpoxaU9UsviS+Knec3JR7aneiNVUyqmxWedUxa+QCqN1TrJELOPCMu1xV/SXbLfUT2orHj7S/IHtZwbxa6+Dnzru061Z8z0zU76bx9PG8HXIZB+Ju8Om6P1vjyWZt1lvtTsj3UxtrtWljs8kjOX+C+2ez34LxxPGiHXIZJ2q3tzoKnfNxv70WTxnH0Tbb0QF/cv0WjMfHy3bIZZyo3XFMr63raq7Cc2V1vqjdQr8F45vhnwnxXThZu95hvfwXBJ37sN+q3UK/BeOMuzAc026wO1viXLhLSuSdUc5QlleNTLL3Ur7fQtfpfFeuIpTuTThUI/P29PNW6SesMngSEOfW5DjTNjpbEsviyhrj0+WMqDaSTGCyLq3nmC/chjvXdwkpQe0SVKhdggq1S1Chdgkq1C5BhdolqFC7BJXd2nW1+3d4Q0g91C5BhdolqFC7BBVql6BC7RJUqF2CCrVLUKF2CSrULkGF2iWoULsEFWqXoELtElSoXYIKtUtQoXYJKtQuQYXaJahQuwQVapegQu0SVKhdggq1S1ChdgkqlCBBhdolqFC7BBVql6DyD46Que4mdDq0AAAAAElFTkSuQmCC" alt="" />

可以通过content="hello" 把hello赋值给content变量,可以通过user = "user1",把user1赋值给user变量,这就是指定变量。

4.动态参数*args

def f1(*args):
print(args,type(args))
list1 = [11,22,"alex","hehe"]
f1(list1,'name')

结果:

aaarticlea/png;base64,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" alt="" />

由结果可以知道,我们传的参数,都会作为元组的一个元素,例如:列表list1=[11,22,'alex','hehe']  ,list1作为了 元组的一个元素,参数name也作为了元组的一个参数。

def f1(*args):
print(args)
list1 = [11,22,"alex","hehe"]
f1(list1) #把整个列表内容当成一个整体作为元祖的一个元素

结果:

aaarticlea/png;base64,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" alt="" />

从结果可以知道,把参数list1(列表),当成了一个整体作为元组的一个元素

def f1(*args):
print(args)
list1 = [11,22,"alex","hehe"]
f1(*list1) # 把列表中的每个值,分别作为元祖的每个元素

结果:

aaarticlea/png;base64,iVBORw0KGgoAAAANSUhEUgAAARQAAAA9CAIAAADjxgFkAAAGJElEQVR4nO2cwZ2kLBDFCYuEmjB6IlhuHYXX5T63zcDDZwYm4XfQxkIolBrU1nn/3x56aMRX6IMC7VUDAECEOlsAAFcF5gFACMwDgJBdzdNb/bLdnmc4h6vEdRWdpXxKXKXm6a1+KvU1/tO2z9fu7Cuq0xo1t6DUl9LfH9APZewdV2e/3U81ju1cQ+fQfWuviuhxJi01FVdNNsZVZJ7e6qd5t9rZlzLtmopvnbg2rVHNLM416+18GjvGNd7cTbWb8gI6e/uYRdL7ylnG2Om4qlAQV4F5YrewsdE6ZvYb0UfFLf68BhXjisa5mh1yBZ2cnt5a1tWpuISI4yowD512UvRWPxM5QGJgu4N56sUVV6vaIVfRSZud7qKceeolLPK4Csyz1iJjnjVx7wnNr6Ya55NdHc7mY+JLu4zmyupLqeZvvh3X+MpB/qkaO7Zv2vGQ6dtF+0F0G+Pya4yX7WiDVOqXF0zamRcnNL+P+sGnGen619E5QjcDWmt7v+zZMH8+lWrcW/m7/o5xVTQPSzTDhmvWYPxojWqsfRk30N6hC0TymXR0962j0TRqh3R3UL816qltP37wh/wdWqPors7yLtweVzcpmU79WL+5SdpNpDL9wNa/lM7x20WHz8qdeS7Mlo7rPcDR+jvFdYR5ouVdZlr09zGltzrs5ak1cnOnrgS/ITMOOYuRZvlhHJlyuzpFcc0XdbHNupo2kDUA2w/ZNOwqOqdjmT6PNwnycQXf7hJX0ZpHvLm+2JjPmyf+iu90klZFg1DqFFPa9rIdrZA2jx9sUjNkaVx+8GvNygokE29p+eV0lpbn41pmp9XjKtttW86bG3bbUseWmmfjSLalnTmf3mieGdfEK7rNcU0DobNNNAAdMaJ/ts5t5ant6Vxci/o7xFX6nGc2epRxchsGsaDSmz7MWV0T5J3zgm91cJ3TvHGTYC1tm+f6YUisJUriGoZx9yI7fb0HI9YMTD9sGdE/WSf3nIeW98xm7yKu53xsVL96XPI3DKJI8ubxZvOr1XgKTm59zIdH6VM0wuW2UIaBmE3b1qudWjbtlNT5D49/YVNxyFviolWb9F7/ew8waMdv1+qg2agfVupfQyfd1WR2U7nHJGQQb41qXCBy37gOfDG0/psEwW7Mnk+ds2yNKxhfT+AqOkuZ48rPqPXjOvKt6jbc+a1B8BzmrJcFV+OKN2FP4So6S2mNev35LzOj7hUXfpIAgBCYBwAhMA8AQmAeAITAPAAIgXkAEALzACAE5gFACMwDgBCYBwAhPzGPM/pqb3KkcUYpdUIstc77afo7q2v95xwfjdg89+ogZ5Q6I5xa5/04/bcZWHMIzcNZxxnmpW+mvOSE6g1tiisvRSLwx0FVaoNvp7O2qPXS+jn9v8A+IvMkrONv4sUXXHkZ9EJ0VvtUgSsvpHQWdaaCXQXnLWpnFLm9/dL63Hlpize3j8Q8fJ85w03iP5sWbHARfGtc+TEcfDoBpQprR3R39wjM01nN9cle5gkP99eEKz8GmGeNzJ1yCwTmyXTxTuZZNpa+Int4xydoiYQmHdS8CCO/dje+ZPp4jOtGhXMMtH8YnUX1Nwq4LVczD5cy7rL5R2R3Vi9DSARFh9pw2PV/dfZx2GAcLmNICIzO0vpbBMA8AcenbWtn3j09GIfdVfMsHBxOhZ3VytgDrZNIa6c/OZ2l9ddA2hbDW2FP85zinCmF0baLQ0iWLAgqJGavfeHMwOksrV94/ttRa6t6ZD/zBKMdeRzBlVeB+nKLebK5Y2cftjv20fLGmURcf/X0t553xA9JmX5xJv2oZVFe/DpJ+ChuXjYw5RVfe9Hv/yRRb0jbFrNg+BTq4VtavREr6k+agdNZWj/LvV5BSVLr9Rz6pJ9eeKa87HWSKG0wLlte7XUVr15bZ7XXvzhvlJul1IwHv79d01ZB/1sktT85daSztP7a2W8+6wzDeS+G1not5az29+bS+n/BpDMMw0k/Sdi7c69+8a6u/7eA3/MAIATmAUAIzAOAEJgHACEwDwBCYB4AhMA8AAiBeQAQAvMAIATmAUAIzAOAEJgHACEwDwBCYB4AhMA8AAiBeQAQAvMAIATmAUDI/7CaX3f5PC6FAAAAAElFTkSuQmCC" alt="" />

从结果可以知道:这个例子中,把参数list1(列表)的每个元素,分别作为元组的每一个元素来处理

5.动态参数 **args

5.1 使用key=value的形式传送变量和值

def f1(**args):
print(args,type(args))
f1(n1="test",n2=30)

结果:

aaarticlea/png;base64,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" alt="" />

**args 参数是把传送过的值当作字典。

5.2 传的字典参数,还是按照字典来处理

def f1(**args):
print(args,type(args)) dict1 = {'k1':"v1",'k2':"v2"}
f1(**dict1)

结果:

aaarticlea/png;base64,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" alt="" />

从结果可以知道,把字典的值传给**args后,也是按照字典的形式处理。

5.3 把整个字典作为value处理

def f1(**args):
print(args,type(args)) dict1 = {'k1':"v1",'k2':"v2"}
f1(kk=dict1)

结果:

aaarticlea/png;base64,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" alt="" />

从结果可以看出来:kk是整个字典的key,而dict1作为一个整体成为kk的value值;

6.万能参数:

def f1(*args,**kwargs):
print(args)
print(kwargs) f1(11,22,33,44,k1="v1",k2="v2")

结果:

aaarticlea/png;base64,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" alt="" />

从结果可以得到:*args 是按照元组来处理。**args 是按照字典来处理的。

11,22,33,44 传给*args 处理。 k1="v1",k2="v2" 传给**args来处理。

四、全局变量

1.全部变量特性:

  • 全局变量必须使用大写(这是python开发者的潜规则)
  • 全局变量,所有作用域都可读
  • 对全局变量进行【重新赋值】,需要global
  • 特殊:列表字典,可修改,但是不可以重新赋值

2.对全局变量进行【重新赋值】,需要使用global

NAME = "test"

def f1():
age =
global NAME #表示,NAME是全局变量。
NAME = ""
print(age,NAME)
def f2():
age =
print(age,NAME)
f1()
f2()

结果:全局变量NAME的值test 被修改为123

aaarticlea/png;base64,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" alt="" />

3.特殊:列表字典,可修改,但是不可以重新赋值

NAME = [,,,]
def f1():
NAME.append() #可以修改
print(NAME) f1()

结果:列表NAME中已经增加了元素 9999

aaarticlea/png;base64,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" alt="" />

第三部分 字符串与字节的互相转换

# utf-8 一个汉字:三个字节

# gbk 一个汉字:二个字节

1.字符串转换为字节

格式

bytes(要转换的字符串, 按照什么编码)

s = "百度"
n = bytes(s,encoding="utf-8")
print(n)

结果:

aaarticlea/png;base64,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" alt="" />可以看到,一个汉字在utf-8类型中是占用3个字节

下面看下载gdk编码中:

s = "百度"
n = bytes(s,encoding="gbk")
print(n)

结果:

aaarticlea/png;base64,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" alt="" />可以看出,在gbk编码中,一个汉字占2个字节

2.字节转换为字符串

使用str()

new_str = str(bytes("百度",encoding="utf-8"),encoding="utf-8")
print(new_str)

结果:

百度

http://i.cnblogs.com/EditPosts.aspx?postid=5516664

第四部分  文件操作

一、打开文件

语法:

文件句柄 = open('文件路径','模式')

打开文件时,需要指定文件路径和以何等方式打开文件,打开后,即可获取该文件句柄,日后通过此文件句柄对该文件操作。

f = open('db','r')  #只读模式【默认】
f = open('db','w') #只写模式【不可读;不存在则创建;存在则清空内容;】
f = open('db','x') #只写模式 【不可读;不存在则创建,存在则报错】
f = open('db','a') #追加模式 【可读;不存在则创建;存在则只追加内容】
f = open('db','r',encoding="utf-8")

以上只是以字符串来进行操作。

如果使用 “b” 参数,表示以字节来操作,例如 wb,rb,ab  ,都是以字节为单位来操作的。

“+” 表示可以同时读写某个文件

  • r+,读写【可读,可写】
  • w+,写读【可读,可写】
  • x+,写读【可读,可写】
  • a+,写读【可读,可写】

“b” 表示以字节的方式操作

  • rb 或 r+b
  • wb 或 w+b
  • xb 或 w+b
  • ab  或 a+b

注意:以b方式打开时,读取到的内容是字节类型,写入时也需要提供字节类型

read() 方法读取文件内容:

无参数,读全部;

如果打开模式无b,则read,按照字符读取。如果有b,则按照字节读取

2.seek()调整当前指针的位置(字节)

seek() 永远是以字节的形式移动位置。不管我们是以什么样的形式打开文件,都是以字节的形式移动位置。

3.tell()获取当前指针的位置(字节)

以字节的形式获取位置

例如:

文件db的内容为:

国admin 123456
f = open("db",'r+',encoding="utf-8")
#如果打开模式无b,则read,按照字符读取
data = f.read(1)
print(f.tell())
f.close()

结果:

3

因为在utf-8编码中一个汉字是3个字节。所以这里的结果是3

4.flush() 强制把内容写入到硬盘

5.readline() 仅读取一行

6.for循环文件对象(迭代文件内容)

f = open("db",'r+',encoding="utf-8")
for line in f:
print(line)

7.with open('file1')  as file1 , open('file2')  as  f2:

把file1文件中的前10行,写入一个新文件file2里

with open('file1','r',encoding="utf-8") as f1,open('file2','w',encoding="utf-8") as f2:
times = 0
for line in f1:
times += 1
if times < 10:
f2.write(line)
else:
break

8.把file1文件中的某个字符串替换为别的字符串,并生成一个新文件file2

下面的例子中,把关键字 baidu  替换为 google

with open('file1','r',encoding="utf-8") as f1,open('file2','w',encoding="utf-8") as f2:
for line in f1:
new_str = line.replace("baidu",'google')
f2.write(new_str)

python学习-day3的更多相关文章

  1. python学习day3

    目录: 1.集合set 2.计数器 3.有序字典 4.默认字典 5.可命名元组 6.队列 7.深浅拷贝 8.函数 9.lambda表达式 10.内置函数 一.集合set set是一个无序且不重复的元素 ...

  2. python学习Day3 变量、格式化输出、注释、基本数据类型、运算符

    今天复习内容(7项) 1.语言的分类 -- 机器语言:直接编写0,1指令,直接能被硬件执行 -- 汇编语言:编写助记符(与指令的对应关系),找到对应的指令直接交给硬件执行 -- 高级语言:编写人能识别 ...

  3. python学习 day3 (3月4日)---字符串

    字符串: 下标(索引) 切片[起始:终止] 步长[起始:终止:1] 或者-1 从后往前 -1 -2 -3 15个专属方法: 1-6  : 格式:大小写 , 居中(6) s.capitalize() s ...

  4. Python学习day3作业

    days3作业 作业需求 HAproxy配置文件操作 根据用户输入,输出对应的backend下的server信息 可添加backend 和sever信息 可修改backend 和sever信息 可删除 ...

  5. python学习day3 编程语言分类 变量 格式化输出

    1.编程语言分类 机器语言:直接使用二进制指令直接编写程序,直接操作计算机硬件,必须考虑硬件细节 汇编语言:使用英文标签代替二进制指令去编写程序,直接操作计算机硬件,必须考虑硬件细节对,不过相比机器语 ...

  6. Python学习day3 数据类型Ⅰ(str,int,bool)

    day3  数据类型 @上节内容补充 每周一个思维导图-xmind.exe in / not in #示例:(是否包含敏感字符)while True:    text = input('请输入你要说的 ...

  7. Python学习笔记,day3

    Python学习第三天 一.集合 集合是一个无序的,不重复的数据组合,它的主要作用如下: 去重,把一个列表变成集合,就自动去重了 关系测试,测试两组数据之前的交集.差集.并集等关系 常用操作: s = ...

  8. python s12 day3

    python s12 day3   深浅拷贝 对于 数字 和 字符串 而言,赋值.浅拷贝和深拷贝无意义,因为其永远指向同一个内存地址. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 ...

  9. python学习博客地址集合。。。

    python学习博客地址集合...   老师讲课博客目录 http://www.bootcdn.cn/bootstrap/  bootstrap cdn在线地址 http://www.cnblogs. ...

随机推荐

  1. 第一篇博客关于Log4net的配置记录

    说明:本程序演示如何利用log4net记录程序日志信息.log4net是一个功能著名的开源日志记录组件.利用log4net可以方便地将日志信息记录到文件.控制台.Windows事件日志和数据库(包括M ...

  2. django: db howto - 2

    继 django: db howto - 1 : 一 操作数据库的三种方式: [root@bogon csvt03]# python2.7 manage.py shell Python 2.7.5 ( ...

  3. 委托与Lambda-浅谈

    委托概述 委托是寻址方法的.NET版本. 在C++中,函数指针只不过是一个指向内存位置的指针,它不是类型安全的.我们无法判断这个指针实际指向什么,更不知晓像参数和返回类型等项了. 而.NET委托完全不 ...

  4. webview笔记

    1. 用户上传文件 webChromeClient的onShowFileChooser这个方法,这将打开一个文件选择器,如果要取消这个请求则是调用filePathCallback.onReceiveV ...

  5. iOS ui界面vtf 开发

    addConstraints 添加约束的步奏 添加控件到view中 设置translateResizeLayoutintoautolayout = false 添加约束 注意 约束 : 出现 有父子关 ...

  6. .net framework3.0 以上版本开发的软件乱码问题

    首先介绍一下:WPF是微软新一代图形系统,运行在.NET Framework 3.0及以上版本下,为用户界面.2D/3D 图形.文档和媒体提供了统一的描述和操作方法.基于DirectX 9/10技术的 ...

  7. 针对AJAX与JSONP的异同

    针对AJAX与JSONP的异同       1.ajax和jsonp这两种技术在调用方式上“看起来”很像,目的也一样,都是请求一个url,然后把服务器返回的数据进行处理,因此jquery和ext等框架 ...

  8. 关于js中的事件

    这是第一篇技术性博客. 因为最近做的web版前端求职简历算是告一段落了(点此看简历).(稍微记录下吧:自从确定简历的简笔画风格后(因为刚开始设想的蓝天白云大树啥的不仅图片特难找而且做着做着就觉得有点俗 ...

  9. php 二维数组按照某value值求出最大值最小值

    //商家的等级信息是一个二维数组,求出最小折扣和最大折扣array(0=>array('levelname'=>'银','dis'=>7.5), 1=>array('level ...

  10. flask开发restful api系列(3)--利用alembic进行数据库更改

    上面两章,主要讲基本的配置,今天我们来做一个比较有趣的东西,为每个客户加一个头像图片.如果我们图片保存在自己的服务器,对于服务器要求有点高,每次下载的时候,都会阻塞网络接口,要是1000个人同时访问这 ...