chore: clean repository history
This commit is contained in:
commit
e1fb2929c0
661 files changed
+167488
No files matched your search
@@ -0,0 +1,66 @@
|
||||
---
|
||||
id: practical-python-2.9
|
||||
source_exercise_id: "2.9"
|
||||
title: "Collecting Data"
|
||||
section: "2.3 Formatting"
|
||||
source_path: "02_Working_with_data/03_Formatting.md"
|
||||
source_repo: "https://github.com/dabeaz-course/practical-python"
|
||||
source_commit: "93dca856b41c61a0a0f85ae334116e4c125629ea"
|
||||
student_visible_solution: false
|
||||
has_private_solution: false
|
||||
skip: false
|
||||
---
|
||||
|
||||
# Exercise 2.9: Collecting Data
|
||||
|
||||
> Source: Practical Python Programming, `02_Working_with_data/03_Formatting.md`.
|
||||
|
||||
### Exercise 2.9: Collecting Data
|
||||
|
||||
In Exercise 2.7, you wrote a program called `report.py` that computed the gain/loss of a
|
||||
stock portfolio. In this exercise, you're going to start modifying it to produce a table like this:
|
||||
|
||||
```
|
||||
Name Shares Price Change
|
||||
---------- ---------- ---------- ----------
|
||||
AA 100 9.22 -22.98
|
||||
IBM 50 106.28 15.18
|
||||
CAT 150 35.46 -47.98
|
||||
MSFT 200 20.89 -30.34
|
||||
GE 95 13.48 -26.89
|
||||
MSFT 50 20.89 -44.21
|
||||
IBM 100 106.28 35.84
|
||||
```
|
||||
|
||||
In this report, "Price" is the current share price of the stock and
|
||||
"Change" is the change in the share price from the initial purchase
|
||||
price.
|
||||
|
||||
|
||||
In order to generate the above report, you’ll first want to collect
|
||||
all of the data shown in the table. Write a function `make_report()`
|
||||
that takes a list of stocks and dictionary of prices as input and
|
||||
returns a list of tuples containing the rows of the above table.
|
||||
|
||||
Add this function to your `report.py` file. Here’s how it should work
|
||||
if you try it interactively:
|
||||
|
||||
```python
|
||||
>>> portfolio = read_portfolio('Data/portfolio.csv')
|
||||
>>> prices = read_prices('Data/prices.csv')
|
||||
>>> report = make_report(portfolio, prices)
|
||||
>>> for r in report:
|
||||
print(r)
|
||||
|
||||
('AA', 100, 9.22, -22.980000000000004)
|
||||
('IBM', 50, 106.28, 15.180000000000007)
|
||||
('CAT', 150, 35.46, -47.98)
|
||||
('MSFT', 200, 20.89, -30.339999999999996)
|
||||
('GE', 95, 13.48, -26.889999999999997)
|
||||
...
|
||||
>>>
|
||||
```
|
||||
|
||||
## 关联来源
|
||||
|
||||
- [[summaries/03_Formatting]]
|
||||
Reference in new issue
Block a user