-
Notifications
You must be signed in to change notification settings - Fork 27
Expand file tree
/
Copy pathcourse.json
More file actions
20136 lines (20136 loc) · 675 KB
/
course.json
File metadata and controls
20136 lines (20136 loc) · 675 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
797
798
799
800
801
802
803
804
805
806
807
808
809
810
811
812
813
814
815
816
817
818
819
820
821
822
823
824
825
826
827
828
829
830
831
832
833
834
835
836
837
838
839
840
841
842
843
844
845
846
847
848
849
850
851
852
853
854
855
856
857
858
859
860
861
862
863
864
865
866
867
868
869
870
871
872
873
874
875
876
877
878
879
880
881
882
883
884
885
886
887
888
889
890
891
892
893
894
895
896
897
898
899
900
901
902
903
904
905
906
907
908
909
910
911
912
913
914
915
916
917
918
919
920
921
922
923
924
925
926
927
928
929
930
931
932
933
934
935
936
937
938
939
940
941
942
943
944
945
946
947
948
949
950
951
952
953
954
955
956
957
958
959
960
961
962
963
964
965
966
967
968
969
970
971
972
973
974
975
976
977
978
979
980
981
982
983
984
985
986
987
988
989
990
991
992
993
994
995
996
997
998
999
1000
{
"course_id": 12,
"course_title": "Python 3, an illustrated tour",
"chapters": [
{
"chapter_id": 12001,
"chapter_title": "Welcome to the course",
"lectures": [
{
"lecture_id": 120101,
"lecture_title": "Course Introduction",
"vimeo_id": 7111116972249486,
"subtitles": [
{
"seconds": 0,
"text": "Welcome to Python 3, An Illustrated Tour."
},
{
"seconds": 2,
"text": "I'm Matt Harrison and I'll be your host"
},
{
"seconds": 4,
"text": "through this nice trip on the new features of Python 3."
},
{
"seconds": 7,
"text": "Let me just give you an introduction"
},
{
"seconds": 9,
"text": "about what we're going to cover in this course."
},
{
"seconds": 11,
"text": "We're going to talk about the changes and new features in Python 3."
},
{
"seconds": 14,
"text": "So if you've been using Python 2 for a while and transitioned to 3"
},
{
"seconds": 18,
"text": "or you've started using 3, but aren't aware"
},
{
"seconds": 21,
"text": "of all the new features, this course is for you."
},
{
"seconds": 24,
"text": "Let me tell you a little bit about myself."
},
{
"seconds": 26,
"text": "I am the author of various Python books."
},
{
"seconds": 28,
"text": "I wrote the best-selling Illustrated Guide to Python 3."
},
{
"seconds": 31,
"text": "I have books on Pandas as well as the Tiny Python Notebook."
},
{
"seconds": 34,
"text": "I run a company called MetaSnake and I do Consulting and training for them."
},
{
"seconds": 38,
"text": "So I've trained companies big and small"
},
{
"seconds": 41,
"text": "and I'm really used to seeing how people cope with Python"
},
{
"seconds": 44,
"text": "and how people cope with the new features."
},
{
"seconds": 46,
"text": "I ran the Utah Python user group for five years."
},
{
"seconds": 49,
"text": "I've been using python since 2000"
},
{
"seconds": 52,
"text": "and I tweet about Python with my username @_ _mharrison_ _."
},
{
"seconds": 56,
"text": "Who is this course for?"
},
{
"seconds": 58,
"text": "Well, it's for old Python programmers"
},
{
"seconds": 60,
"text": "or those who have been using Python 2"
},
{
"seconds": 62,
"text": "and maybe have transitioned a Python 3"
},
{
"seconds": 64,
"text": "but are still programming it as if it were Python 2."
},
{
"seconds": 67,
"text": "It's also for new Python programmers, those who are just getting started"
},
{
"seconds": 70,
"text": "and want to sort of understand better the features"
},
{
"seconds": 73,
"text": "and cool syntax and benefits that Python 3 provides."
},
{
"seconds": 77,
"text": "So in general, this course is aimed for all those"
},
{
"seconds": 79,
"text": "who want to leverage the latest features of Python."
},
{
"seconds": 82,
"text": "Let's talk about what we're going to cover in this course."
},
{
"seconds": 85,
"text": "We're going to talk virtual environments"
},
{
"seconds": 87,
"text": "how you can make use of Pipenv in a Windows or Unix environment."
},
{
"seconds": 91,
"text": "We'll also be talking about Fstrings and how you can take advantage of those,"
},
{
"seconds": 95,
"text": "great new feature in Python 3."
},
{
"seconds": 97,
"text": "We'll also talk about what has changed in numbers since Python 2"
},
{
"seconds": 101,
"text": "some of the things that are happening under the covers"
},
{
"seconds": 103,
"text": "as well as some other features that you can take advantage of."
},
{
"seconds": 106,
"text": "We'll talk about classes, we'll dive into Super and learn how that works."
},
{
"seconds": 111,
"text": "We'll also talk about some of the new dunder methods in classes."
},
{
"seconds": 114,
"text": "We'll talk about functions, we'll talk about keyword only arguments"
},
{
"seconds": 117,
"text": "and we'll get into some of the fun stuff there."
},
{
"seconds": 120,
"text": "We'll look into the standard libraries"
},
{
"seconds": 122,
"text": "some of the new libraries in the standard library,"
},
{
"seconds": 124,
"text": "we'll look at the statistics module, we'll look at the enom module."
},
{
"seconds": 127,
"text": "We'll look at the pathlib module and show some examples from those."
},
{
"seconds": 131,
"text": "We'll also talk about some of the new syntax in Python 3"
},
{
"seconds": 134,
"text": "that isn't available and why you might want to use that."
},
{
"seconds": 138,
"text": "We'll look at the new async library,"
},
{
"seconds": 140,
"text": "we'll talk about how that functions under the covers, the mechanisms that that's using"
},
{
"seconds": 144,
"text": "and we'll look at cool things like asynchronous context managers,"
},
{
"seconds": 147,
"text": "asynchronous iterators and asynchronous generators."
},
{
"seconds": 150,
"text": "We'll also dive into annotations and see how you can take advantage"
},
{
"seconds": 153,
"text": "of this cool new feature to make your code more robust."
},
{
"seconds": 157,
"text": "In addition, we'll look at unicode,"
},
{
"seconds": 159,
"text": "this is native in Python 3"
},
{
"seconds": 161,
"text": "and we'll see some of the features that Python 3 supports"
},
{
"seconds": 164,
"text": "and allows you to do with the new Unicode functionality."
},
{
"seconds": 167,
"text": "We'll also look at some of the new annotation tools"
},
{
"seconds": 170,
"text": "that allow you to take advantage of the annotation syntax."
},
{
"seconds": 173,
"text": "And we'll also talk about the new features like generalized unpacking"
},
{
"seconds": 178,
"text": "and show some examples of that."
},
{
"seconds": 180,
"text": "So in addition to content, which I think is pretty good,"
},
{
"seconds": 183,
"text": "there's also a lot of labs for all these concepts"
},
{
"seconds": 187,
"text": "and you get to try your hand at these Labs"
},
{
"seconds": 190,
"text": "there are some cool self-correcting assignments that you'll get to do."
},
{
"seconds": 193,
"text": "And in addition, there are content walks through all the solutions to those"
},
{
"seconds": 197,
"text": "as well as the walks through common errors that people have"
},
{
"seconds": 200,
"text": "when they come across these things."
},
{
"seconds": 202,
"text": "It's a great way to try your hand out"
},
{
"seconds": 204,
"text": "and learn these new things and take advantage of them."
},
{
"seconds": 206,
"text": "I hope you enjoy this class and I hope that it makes your Python code"
},
{
"seconds": 211,
"text": "much cleaner, easier to read and more robust."
},
{
"seconds": 214,
"text": "Enjoy."
}
]
},
{
"lecture_id": 120102,
"lecture_title": "Course resources and source code",
"vimeo_id": 7111530185483682,
"subtitles": [
{
"seconds": 1,
"text": "I just want to share with you some motivation and some resources."
},
{
"seconds": 5,
"text": "I've taught a bunch of people Python over the years"
},
{
"seconds": 7,
"text": "and I've found that most people learn best when they can"
},
{
"seconds": 10,
"text": "in addition to just listening or watching, they can try something out."
},
{
"seconds": 13,
"text": "And so included with the course are a bunch of labs or assignments"
},
{
"seconds": 16,
"text": "for you to try out what we've talked about."
},
{
"seconds": 18,
"text": "I would advise you not to look at the solution videos"
},
{
"seconds": 21,
"text": "which are included in the course until you've tried out the labs,"
},
{
"seconds": 24,
"text": "that's going to help you get the most out of the course."
},
{
"seconds": 28,
"text": "Also, I want to give you this GitHub link here."
},
{
"seconds": 30,
"text": "This will give you all the resources for the course."
},
{
"seconds": 33,
"text": "So keep this handy while you're going through the course."
}
]
},
{
"lecture_id": 120103,
"lecture_title": "Installing Python on Windows",
"vimeo_id": 7111785294791504,
"subtitles": [
{
"seconds": 1,
"text": "In this screencast, we're going to look at how to install Python 3 on Windows 10."
},
{
"seconds": 5,
"text": "Typically, when I use Python in Windows,"
},
{
"seconds": 7,
"text": "I like to make sure that I understand how to use the prompt."
},
{
"seconds": 10,
"text": "So in order to launch the prompt you're going to go down"
},
{
"seconds": 12,
"text": "to the bottom of your taskbar"
},
{
"seconds": 15,
"text": "and where it says type here to search you can just type CMD"
},
{
"seconds": 17,
"text": "and then we'll pull up command prompt and you can run that."
},
{
"seconds": 21,
"text": "Now, you'll note here that when I type Python"
},
{
"seconds": 23,
"text": "it currently says the Python is not installed, so we want to remedy that."
},
{
"seconds": 27,
"text": "Let's go to the Python website and download Python 3."
},
{
"seconds": 31,
"text": "We're at the Python website and you can see if you scroll down a little bit"
},
{
"seconds": 35,
"text": "that there is a download link."
},
{
"seconds": 38,
"text": "We're going to click Python 3.6.4 which is the current version"
},
{
"seconds": 41,
"text": "at the time of this recording, you'll want to use"
},
{
"seconds": 44,
"text": "whatever Python 3 version is listed there below."
},
{
"seconds": 48,
"text": "Inside of here, you'll see a bunch of things listing peps and whatnot"
},
{
"seconds": 53,
"text": "and you can scroll down and we'll get the files here at the bottom."
},
{
"seconds": 58,
"text": "And typically, you'll probably want to either install"
},
{
"seconds": 60,
"text": "a Windows 64-bit or Windows 32-bit, I am going to do a window 64-bit."
},
{
"seconds": 66,
"text": "That should work on most modern machines."
},
{
"seconds": 69,
"text": "There's a couple of different versions here."
},
{
"seconds": 71,
"text": "There's what they call an embeddable zip file."
},
{
"seconds": 73,
"text": "There's an executable installer and there's a web-based installer."
},
{
"seconds": 76,
"text": "I'm going to download the executable installer."
},
{
"seconds": 79,
"text": "So just click on that and download it."
},
{
"seconds": 81,
"text": "This will download for a minute."
},
{
"seconds": 84,
"text": "After that's downloaded, you'll see that there's a file here"
},
{
"seconds": 86,
"text": "called Python 3.6.4 AMD we'll just double click on that"
},
{
"seconds": 89,
"text": "and that should install Python for us."
},
{
"seconds": 92,
"text": "Now, this is where you want to be careful."
},
{
"seconds": 94,
"text": "You'll see that there are various ways to install it"
},
{
"seconds": 96,
"text": "and one thing that you need to make sure is"
},
{
"seconds": 98,
"text": "that you click this add python 3.6 to path."
},
{
"seconds": 101,
"text": "If you don't click that, when I type Python at the command prompt, it won't find it."
},
{
"seconds": 105,
"text": "So I'm going to click that."
},
{
"seconds": 107,
"text": "I'm also going to choose customized installation"
},
{
"seconds": 109,
"text": "note that the normal installation is going to put it in this"
},
{
"seconds": 111,
"text": "C:\\Users\\matt\\AppData\\Local\\Pograms\\Python\\Python36 directory"
},
{
"seconds": 115,
"text": "and I'm just going to say customize and I'm going to install for all users."
},
{
"seconds": 120,
"text": "So it will put it in the C:\\Program Files\\Python36"
},
{
"seconds": 126,
"text": "it's going to ask if I want to install it, I'll say yes,"
},
{
"seconds": 132,
"text": "it will think for a little bit and install Python."
},
{
"seconds": 136,
"text": "Okay, it looks like it's installed. I'm just going to close this."
},
{
"seconds": 141,
"text": "Let's go back to our prompt here."
},
{
"seconds": 146,
"text": "Remember type CMD down there and let's type Python."
},
{
"seconds": 149,
"text": "You can see that after I type Python it's now put me in the Python interpreter"
},
{
"seconds": 153,
"text": "where I can execute Python code,"
},
{
"seconds": 155,
"text": "to get out of this, I type quit and that will put me back into the prompt. 02:39 Note that I can also do things such as type python -m idlelib.idle"
},
{
"seconds": 165,
"text": "and it will launch idle, this is a Python editor that comes with Python."
},
{
"seconds": 171,
"text": "Note that a couple other things that it will do"
},
{
"seconds": 174,
"text": "is that if you scroll down here you'll see that there is a Python directory here"
},
{
"seconds": 180,
"text": "and you can click on this idle here to launch idle,"
},
{
"seconds": 184,
"text": "which will launch idle that way,"
},
{
"seconds": 187,
"text": "alternatively you can launch Python by clicking this as well."
},
{
"seconds": 193,
"text": "This will open a command prompt with Python,"
},
{
"seconds": 196,
"text": "but I really prefer just to go down here and type CMD to launch Python here"
},
{
"seconds": 202,
"text": "and note that we'll talk about virtual environments."
},
{
"seconds": 206,
"text": "When I launch Idle from the launcher here, we're using the system idle"
},
{
"seconds": 210,
"text": "and when we start using virtual environments"
},
{
"seconds": 213,
"text": "we'll probably want to launch idle"
},
{
"seconds": 215,
"text": "or other programs from our virtual environment."
},
{
"seconds": 217,
"text": "So rather than launch it from there,"
},
{
"seconds": 220,
"text": "I prefer using this Python -m idlelib.idle to launch idle."
},
{
"seconds": 226,
"text": "Great, hopefully after you've done this"
},
{
"seconds": 228,
"text": "you've been able to get Python on your Windows 10 machine working."
}
]
},
{
"lecture_id": 120104,
"lecture_title": "Video player: A quick feature tour",
"vimeo_id": 232533419,
"subtitles": [
{
"seconds": 0,
"text": "Welcome to your course i want to take just a quick moment to take you on"
},
{
"seconds": 4,
"text": "a tour, the video player in all of its features so that you get the"
},
{
"seconds": 7,
"text": "most out of this entire course and all the courses you take with us so you'll"
},
{
"seconds": 11,
"text": "start your course page of course,"
},
{
"seconds": 12,
"text": "and you can see that it graze out and collapses the work they've already done so"
},
{
"seconds": 17,
"text": "let's, go to the next video here opens up this separate player and you could"
},
{
"seconds": 21,
"text": "see it a standard video player stuff you can pause for play you can actually skip"
},
{
"seconds": 27,
"text": "back a few seconds or skip forward a few more you can jump to the next"
},
{
"seconds": 31,
"text": "or previous lecture things like that shows you which chapter in which lecture topic you're learning"
},
{
"seconds": 36,
"text": "right now and as other cool stuff like take me to the course page,"
},
{
"seconds": 39,
"text": "show me the full transcript dialogue for this lecture take me to get home repo where"
},
{
"seconds": 44,
"text": "the source code for this course lives and even do full text search and when we"
},
{
"seconds": 48,
"text": "have transcripts that's searching every spoken word in the entire video not just titles and description"
},
{
"seconds": 55,
"text": "that things like that also some social media stuff up there as well."
},
{
"seconds": 59,
"text": "For those of you who have a hard time hearing or don't speak english is your"
},
{
"seconds": 64,
"text": "first language we have subtitles from the transcripts,"
},
{
"seconds": 67,
"text": "so if you turn on subtitles right here,"
},
{
"seconds": 70,
"text": "you'll be able to follow along as this words are spoken on the screen."
},
{
"seconds": 74,
"text": "I know that could be a big help to some of you just cause this is"
},
{
"seconds": 76,
"text": "a web app doesn't mean you can't use your keyboard."
},
{
"seconds": 78,
"text": "You want a pause and play?"
},
{
"seconds": 80,
"text": "Use your space bar to top of that,"
},
{
"seconds": 82,
"text": "you want to skip ahead or backwards left arrow,"
},
{
"seconds": 84,
"text": "right? Our next lecture shift left shift,"
},
{
"seconds": 87,
"text": "right went to toggle subtitles just hit s and if you wonder what all the hockey"
},
{
"seconds": 91,
"text": "star and click this little thing right here,"
},
{
"seconds": 93,
"text": "it'll bring up a dialogue with all the hockey options."
},
{
"seconds": 96,
"text": "Finally, you may be watching this on a tablet or even a phone,"
},
{
"seconds": 99,
"text": "hopefully a big phone, but you might be watching this in some sort of touch"
},
{
"seconds": 102,
"text": "screen device. If that's true,"
},
{
"seconds": 104,
"text": "you're probably holding with your thumb,"
},
{
"seconds": 106,
"text": "so you click right here. Seek back ten seconds right there to seek ahead thirty"
},
{
"seconds": 109,
"text": "and, of course, click in the middle to toggle play or pause now on"
},
{
"seconds": 113,
"text": "ios because the way i was works,"
},
{
"seconds": 116,
"text": "they don't let you auto start playing videos,"
},
{
"seconds": 118,
"text": "so you may have to click right in the middle here."
},
{
"seconds": 120,
"text": "Start each lecture on iowa's that's a player now go enjoy that core."
}
]
}
]
},
{
"chapter_id": 12002,
"chapter_title": "Virtual Environments",
"lectures": [
{
"lecture_id": 120201,
"lecture_title": "Installing Pipenv on Windows",
"vimeo_id": 7111968730331063,
"subtitles": [
{
"seconds": 1,
"text": "In this video, we're going to look at how to install the tool pipenv,"
},
{
"seconds": 3,
"text": "which is the recommended way to install Python packages"
},
{
"seconds": 6,
"text": "and create virtual environments in Python 3."
},
{
"seconds": 9,
"text": "This is kind of tricky to install on windows, so I'll show you how we do it."
},
{
"seconds": 13,
"text": "First let's launch a command prompt by typing cmd into the search box here"
},
{
"seconds": 17,
"text": "and we'll see that we don't have access to pipenv right now,"
},
{
"seconds": 21,
"text": "but we do have access to Python."
},
{
"seconds": 23,
"text": "Okay, so we have Python installed, but we don't have pipenv installed."
},
{
"seconds": 27,
"text": "So let's install pipenv."
},
{
"seconds": 30,
"text": "Pipenv wraps virtual environment creation"
},
{
"seconds": 32,
"text": "and pip utility into one nice little command line tool"
},
{
"seconds": 38,
"text": "and in order to use it, we have to install it"
},
{
"seconds": 41,
"text": "so we can install it using Python and saying -m I want to run the module pip"
},
{
"seconds": 47,
"text": "install pipenv and we'll try and install it here."
},
{
"seconds": 51,
"text": "When I'm running this command, it's installing it into the system Python."
},
{
"seconds": 55,
"text": "It's going to think for a while but it's going to give me an error"
},
{
"seconds": 58,
"text": "because it couldn't install it into a certain directory"
},
{
"seconds": 60,
"text": "because it doesn't have access to do that,"
},
{
"seconds": 62,
"text": "and that might seem annoying or problematic"
},
{
"seconds": 65,
"text": "but it can be okay as well because what it allows us to do is"
},
{
"seconds": 69,
"text": "sandbox our system install and not have any user trampling on top of it."
},
{
"seconds": 76,
"text": "I want to install it, instead it's doing what's called a user install."
},
{
"seconds": 79,
"text": "So I'll show you how to do that."
},
{
"seconds": 81,
"text": "Rather than saying python -m pip install pipenv,"
},
{
"seconds": 85,
"text": "I'm going to add a --user option here"
},
{
"seconds": 88,
"text": "and this is going to try and install it again."
},
{
"seconds": 94,
"text": "And it looks like it worked this time."
},
{
"seconds": 95,
"text": "Let's try and run pipenv and we can see that pipenv did not run."
},
{
"seconds": 99,
"text": "Why didn't it run? It's because our path can't find it,"
},
{
"seconds": 103,
"text": "because we did a user install the directory"
},
{
"seconds": 105,
"text": "where a user install binary is installed is not in our path."
},
{
"seconds": 109,
"text": "We can look at our path by saying echo %path%"
},
{
"seconds": 113,
"text": "and we can see also where the path that the user install goes in"
},
{
"seconds": 117,
"text": "by saying Python -m site --user-base."
},
{
"seconds": 123,
"text": "So inside of this app data roaming Python"
},
{
"seconds": 126,
"text": "is a directory that has our new pipenv guy, let's look at that."
},
{
"seconds": 131,
"text": "It's going to say dir app data roaming Python"
},
{
"seconds": 135,
"text": "and inside of Python there's a Python 3.6 directory"
},
{
"seconds": 137,
"text": "and inside that, there's a scripts directory"
},
{
"seconds": 140,
"text": "and that's where our pipenv executable is."
},
{
"seconds": 142,
"text": "So what I want to do is copy this directory right here"
},
{
"seconds": 145,
"text": "I'll just highlight it and hit enter and if I go down here into my search box"
},
{
"seconds": 149,
"text": "and type env, that will allow me to update my environment variable."
},
{
"seconds": 153,
"text": "I'll just click at the bottom there, environment variable"
},
{
"seconds": 155,
"text": "click on path and say edit"
},
{
"seconds": 158,
"text": "and I'm going to say new I want to add a new environment variable path"
},
{
"seconds": 162,
"text": "and just paste in what I copied there."
},
{
"seconds": 164,
"text": "I can say edit. Okay. Okay. Okay,"
},
{
"seconds": 167,
"text": "now note that pipenv will not work in this command prompt."
},
{
"seconds": 170,
"text": "So I'm going to close it, but I'll launch another one here"
},
{