all
This commit is contained in:
parent
b06dbec9c9
commit
394f1e419b
|
@ -1,6 +1,6 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<project version="4">
|
||||
<component name="dataSourceStorageLocal" created-in="PY-222.3739.56">
|
||||
<component name="dataSourceStorageLocal" created-in="PY-231.8770.66">
|
||||
<data-source name="MySQL - @10.8.203.25" uuid="dd327101-360a-4ce3-a39e-0a30a298d5cf">
|
||||
<database-info product="MySQL" version="8.0.22" jdbc-version="4.2" driver-name="MySQL Connector/J" driver-version="mysql-connector-java-8.0.21 (Revision: 33f65445a1bcc544eb0120491926484da168f199)" dbms="MYSQL" exact-version="8.0.22" exact-driver-version="8.0">
|
||||
<extra-name-characters>#@</extra-name-characters>
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -1,4 +1,25 @@
|
|||
a,b=0,1
|
||||
while b<10:
|
||||
print(b,end=',')
|
||||
a,b=b,a+b
|
||||
import requests
|
||||
import json
|
||||
|
||||
url = "https://mp-prod.smartmidea.net/mas/v5/app/proxy?alias=/v1/user/login/id/get"
|
||||
|
||||
payload = json.dumps({
|
||||
"loginAccount": "17328565609",
|
||||
"reqId": "ga1a838aad7c85992b71bg3f717975d9",
|
||||
"stamp": "1683621785168"
|
||||
})
|
||||
headers = {
|
||||
'User-Agent': 'Apifox/1.0.0 (https://www.apifox.cn)',
|
||||
'Content-Type': 'application/json',
|
||||
'sign': 'fc57d8c8c9cff3f07adaf9eaf78ed6b1',
|
||||
'random': '0.9236182574629128',
|
||||
'Accept': '*/*',
|
||||
'Cache-Control': 'no-cache',
|
||||
'Host': 'mp-prod.smartmidea.net',
|
||||
'Connection': 'keep-alive',
|
||||
'Cookie': 'acw_tc=2f61f26116836217722087218e2d7e5b0a8b4d17b5c5b4d67e77a990421536'
|
||||
}
|
||||
proxy = {'http': '10.8.68.32:8888', 'https': '10.8.68.32:8888'}
|
||||
response = requests.request("POST", url, headers=headers, data=payload, proxies=proxy)
|
||||
|
||||
print(response.text)
|
||||
|
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
|
@ -292,6 +292,197 @@ In [70]: my_str.join(words)
|
|||
Out[70]: 'welcome_to_my_web'
|
||||
```
|
||||
|
||||
### 17. isdecimal
|
||||
判断字符串是否为十进制数?得到一个布尔值
|
||||
```python
|
||||
v1 = "1238871"
|
||||
result = v1.isdecimal()
|
||||
print(result) # True
|
||||
```
|
||||
```
|
||||
# 案例
|
||||
v1 = input("请输入值:")
|
||||
v2 = input("请输入值:")
|
||||
if v1.isdecimal() and v2.isdecimal():
|
||||
data = int(v1) + int(v2)
|
||||
print(data)
|
||||
else:
|
||||
print("请正确输入数字")
|
||||
```
|
||||
|
||||
### 18. strip
|
||||
去除字符串两边的 空格、换行符、制表符,得到一个新字符串
|
||||
```
|
||||
msg = " H e ll o啊,树哥 "
|
||||
data = msg.strip()
|
||||
print(data) # 将msg两边的空白去掉,得到"H e ll o啊,树哥"
|
||||
```
|
||||
```python
|
||||
# 案例
|
||||
code = input("请输入4位验证码:")
|
||||
data = code.strip()
|
||||
if data == "FB87":
|
||||
print('验证码正确')
|
||||
else:
|
||||
print("验证码错误")
|
||||
```
|
||||
|
||||
### 19. format
|
||||
格式化字符串,得到新的字符串
|
||||
```python
|
||||
name = "{0}的喜欢干很多行业,例如有:{1}、{2} 等"
|
||||
data = name.format("老王", "护士", "嫩模")
|
||||
print(data) # 老王的喜欢干很多行业,例如有:护士、嫩模 等
|
||||
```
|
||||
```python
|
||||
name = "{}的喜欢干很多行业,例如有:{}、{} 等"
|
||||
data = name.format("老王","护士","嫩模")
|
||||
print(data) # 老王的喜欢干很多行业,例如有:护士、嫩模 等
|
||||
```
|
||||
```python
|
||||
name = "{name}的喜欢干很多行业,例如有:{h1}、{h2} 等"
|
||||
data = name.format(name="老王",h1="护士",h2="嫩模")
|
||||
print(data) # 老王的喜欢干很多行业,例如有:护士、嫩模 等
|
||||
```
|
||||
|
||||
|
||||
## 3.3 转换为字符串
|
||||
以后的python开发中经常的用是:数字 转 为字符串类型。
|
||||
|
||||
```python
|
||||
number = 888
|
||||
data = str(number)
|
||||
print(data)
|
||||
```
|
||||
|
||||
### 3.4 其他
|
||||
|
||||
字符串除了有上述那些字符串独有的功能以外,还有一个其他“公共的功能”,某些其他的类型也具有的功能。
|
||||
|
||||
1. 获取字符串长度
|
||||
```python
|
||||
name = "武沛齐"
|
||||
name_length = len(name)
|
||||
print(name_length) # 输出:3
|
||||
```
|
||||
```python
|
||||
nickname = "wupeiqi"
|
||||
length = len(nickname)
|
||||
print(length) # 输出:7
|
||||
```
|
||||
2. 索引,获取字符串中某个字符的值。
|
||||
```python
|
||||
name = "来做点py交易"
|
||||
print( name[0] ) # 输出 来
|
||||
print( name[1] ) # 输出 做
|
||||
print( name[6] ) # 输出 易 (默认索引是从0向后逐步向后增加,索引超出最大范围会报错)
|
||||
print( name[-1] ) # 输出 易 (如果索引为负值,则表示从后向前,-1表示最后一个)
|
||||
print( name[-3] ) # 输出 y
|
||||
print( name[len(name)-1]) # 输出 易
|
||||
```
|
||||
```python
|
||||
# 案例:循环字符串的所有字符
|
||||
content = "长江以北晓峰最美山海关以外晓峰最帅"
|
||||
index = 0
|
||||
while index < len(content):
|
||||
char = content[index]
|
||||
print(char)
|
||||
index += 1
|
||||
```
|
||||
```python
|
||||
# 案例:循环字符串的所有字符
|
||||
content = "你瞅啥"
|
||||
index = -1
|
||||
while index >= - len(content):
|
||||
char = content[index]
|
||||
print(char)
|
||||
index -= 1
|
||||
```
|
||||
**练习题**:获取用户输入的字符判断他的数字的字符串中有一个数字(只考虑个位数)?例如 `你有点2,还特么有点666`这段字符串中有4个数字。
|
||||
|
||||
3. 切片,获取字符串中n连续的字符的值。
|
||||
```python
|
||||
name = "你是风儿我是沙。不,我不是沙而是你爸"
|
||||
print( name[0:2] ) # 输出:你是 (根据索引 `前`按开区间 `后`按闭区间,即:前取后不取)
|
||||
print( name[2:5] ) # 输出:风儿我
|
||||
print( name[2:]) # 输出:风儿我是沙。不,我不是沙而是你爸(后面不写表示到最后)
|
||||
print( name[:6]) # 输出:你是风儿我是(前面不是表示从头开始)
|
||||
print( name[2:-1]) # 输出:风儿我是沙。不,我不是沙而是你
|
||||
print( name[2:-2]) # 输出:风儿我是沙。不,我不是沙而是
|
||||
print( name[0:len(name)]) # 输出:你是风儿我是沙。不,我不是沙而是你爸
|
||||
```
|
||||
4. 步长,相当于我们生活中的跳步选择数据。
|
||||
```python
|
||||
name = "生活不是电影,生活比电影苦"
|
||||
print( name[ 0:5:2 ] ) # 输出:生不电 【前两个值表示区间范围,最有一个值表示步长】
|
||||
print( name[ :8:2 ] ) # 输出:生不电,活 【区间范围的前面不写则表示起始范围为0开始】
|
||||
print( name[ 2::3 ] ) # 输出:不影活影 【区间范围的后面不写则表示结束范围为最后】
|
||||
print( name[ ::2 ] ) # 输出:生不电,活电苦 【区间范围不写表示整个字符串】
|
||||
print( name[ 8:1:-1 ] ) # 输出:活生,影电是不 【倒序】
|
||||
print( name[ ::-1 ] ) # 输出:苦影电比活生,影电是不活生 【倒序】
|
||||
```
|
||||
5. for循环
|
||||
想要循环显示字符串的每个字符,通过之前的 while循环 + 索引 可以实现,现在通过for循环则可以更方便的实现。
|
||||
```python
|
||||
content = "三分天注定,七分靠滤镜"
|
||||
for item in content:
|
||||
print(item)
|
||||
```
|
||||
```python
|
||||
# 案例:判断用输入的值中有多少个字符 `a`(不区分大小写,即:A、a)
|
||||
total_count = 0
|
||||
content = input("请输入内容:")
|
||||
for char in content:
|
||||
if char.upper() == 'A':
|
||||
total_count += 1
|
||||
message = "您输入的内容中A/a共有{}个".format(total_count)
|
||||
```
|
||||
```python
|
||||
# 案例:break和continue也可以应用在for循环中
|
||||
data = "像我这样优秀的人,本该灿烂过一生"
|
||||
for item in data:
|
||||
print(item)
|
||||
if item == "人":
|
||||
break
|
||||
```
|
||||
|
||||
## 作业题
|
||||
|
||||
1. 有变量name = "aleX leNb " 完成如下操作:
|
||||
- 移除 name 变量对应的值两边的空格,并输出处理结果
|
||||
- 判断 name 变量是否以 "al" 开头,并输出结果(用切片)
|
||||
- 判断name变量是否以"Nb"结尾,并输出结果(用切片)
|
||||
- 将 name 变量对应的值中的 所有的"l" 替换为 "p",并输出结果
|
||||
- 将name变量对应的值中的第一个"l"替换成"p",并输出结果
|
||||
- 将 name 变量对应的值根据 所有的"l" 分割,并输出结果
|
||||
- 将name变量对应的值根据第一个"l"分割,并输出结果
|
||||
- 将 name 变量对应的值变大写,并输出结果
|
||||
- 将 name 变量对应的值变小写,并输出结果
|
||||
- 请输出 name 变量对应的值的第 2 个字符?
|
||||
- 请输出 name 变量对应的值的前 3 个字符?
|
||||
- 请输出 name 变量对应的值的后 2 个字符?
|
||||
2. 有字符串s = "123a4b5c"
|
||||
- 通过对s切片形成新的字符串 "123"
|
||||
- 通过对s切片形成新的字符串 "a4b"
|
||||
- 通过对s切片形成字符串s5,s5 = "c"
|
||||
- 通过对s切片形成字符串s6,s6 = "ba2"
|
||||
3. 使用while和for循环字符串 s="asdfer" 中每个元素。
|
||||
4. 使用while和for循环对s="321"进行循环,打印的内容依次是:"倒计时3秒","倒计时2秒","倒计时1秒","出发!"。
|
||||
5. 使用while和for循环分别对字符串 message = "伤情最是晚凉天,憔悴厮人不堪言。" 进行打印。
|
||||
6. 获取用户输入的内容,并计算前四位"l"出现几次,并输出结果。
|
||||
7. 获取用户两次输入的内容,并将所有的数据获取并进行相加,如:
|
||||
```python
|
||||
"""
|
||||
要求:
|
||||
将num1中的的所有数字找到并拼接起来:1232312
|
||||
将num1中的的所有数字找到并拼接起来:1218323
|
||||
然后将两个数字进行相加。
|
||||
"""
|
||||
num1 = input("请输入:") # asdfd123sf2312
|
||||
num2 = input("请输入:") # a12dfd183sf23
|
||||
# 请补充代码
|
||||
```
|
||||
|
||||
|
||||
|
||||
## 二、说明
|
||||
|
@ -300,4 +491,35 @@ Out[70]: 'welcome_to_my_web'
|
|||
|
||||
1. 不要背,理解即可
|
||||
2. 忘记没关系,可以查阅资料
|
||||
3. 学会怎么用,什么时候用什么这是关键点
|
||||
3. 学会怎么用,什么时候用什么这是关键点
|
||||
|
||||
|
||||
**练习题**
|
||||
```
|
||||
1. 写代码实现判断用户输入的值否以 "al"开头,如果是则输出 "是的" 否则 输出 "不是的"
|
||||
2. 写代码实现判断用户输入的值否以"Nb"结尾,如果是则输出 "是的" 否则 输出 "不是的"
|
||||
3. 将 name 变量对应的值中的 所有的"l"替换为 "p",并输出结果
|
||||
4. 写代码实现对用户输入的值判断,是否为十进制小数(isdecimal),如果是则转换为整型并输入,否则直接输出"请输入数字"
|
||||
5. 对用户输入的数据使用"+"切割,判断输入的值是否都是数字?
|
||||
提示:用户输入的格式必须是以+连接,如 5+9 、alex+999
|
||||
6. 写代码实现一个整数加法计算器(两个数相加)
|
||||
需求:提示用户输入:5+9或5+9或5+9,计算出两个值的和(提示:先分割再转换为整型,再相加)
|
||||
7. 写代码实现一个整数加法计算器(两个数相加)
|
||||
需求:提示用户输入:5 +9或5+ 9或5 + 9,计算出两个值的和(提示:先分割再去除空白、再转换为整型,再相加)
|
||||
8. 补充代码实现用户认证。
|
||||
需求:提示用户输入手机号、验证码,全都验证通过之后才算登录成功(验证码大小写不敏感)
|
||||
import random
|
||||
code = random.randrange(1000,9999) # 生成动态验证码
|
||||
msg = "欢迎登录PythonAV系统,您的验证码为:{},手机号为:{}".format(code,"15131266666")
|
||||
print(msg)
|
||||
# 请补充代码
|
||||
9. 补充代码实现数据拼接
|
||||
data_list = []
|
||||
while True:
|
||||
hobby = input("请输入你的爱好(Q/q退出):")
|
||||
if hobby.upper() == 'Q':
|
||||
break
|
||||
data_list.append(hobby) # 把输入的值添加到 data_list 中,如:data_list = ["小姨子","哥们的女朋友"]
|
||||
# 将所有的爱好通过符号 "、"拼接起来并输出
|
||||
|
||||
```
|
||||
|
|
|
@ -152,9 +152,10 @@ def main(folder_path, url):
|
|||
if __name__ == "__main__":
|
||||
import os
|
||||
from common.files_tools.read_file import read_file
|
||||
|
||||
js = read_file('index.json')
|
||||
for folder, url in js.items():
|
||||
if not os.path.exists(folder):
|
||||
os.mkdir(folder)
|
||||
main(folder, url)
|
||||
#
|
||||
# js = read_file('index.json')
|
||||
# for folder, url in js.items():
|
||||
# if not os.path.exists(folder):
|
||||
# os.mkdir(folder)
|
||||
# main(folder, url)
|
||||
get_url_list()
|
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Loading…
Reference in New Issue