chơi xổ số keno trực tuyến

{"appState":{"pageLoadApiCallsStatus":true},"categoryState":{"relatedCategories":{"headers":{"timestamp":"2025-01-31T04:01:07+00:00"},"categoryId":33592,"data":{"title":"Programming & Web Design","slug":"programming-web-design","image":{"src":null,"width":0,"height":0},"breadcrumbs":[{"name":"Technology","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33512"},"slug":"technology","categoryId":33512},{"name":"Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33592"},"slug":"programming-web-design","categoryId":33592}],"parentCategory":{"categoryId":33512,"title":"Technology","slug":"technology","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33512"}},"childCategories":[{"categoryId":34511,"title":"Go Programming Language","slug":"go-programming-language","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/34511"},"image":{"src":"/img/background-image-2.fabfbd5c.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":1,"bookCount":1},{"categoryId":33593,"title":"3D Printing","slug":"3d-printing","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33593"},"image":{"src":"/img/background-image-1.daf74cf0.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":33,"bookCount":1},{"categoryId":33594,"title":"App Development","slug":"app-development","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33594"},"image":{"src":"/img/background-image-2.fabfbd5c.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":85,"bookCount":6},{"categoryId":33595,"title":"C","slug":"c","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33595"},"image":{"src":"/img/background-image-1.daf74cf0.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":17,"bookCount":3},{"categoryId":33596,"title":"C#","slug":"csharp","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33596"},"image":{"src":"/img/background-image-2.fabfbd5c.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":29,"bookCount":4},{"categoryId":33597,"title":"C++","slug":"cplusplus","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33597"},"image":{"src":"/img/background-image-1.daf74cf0.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":63,"bookCount":2},{"categoryId":33598,"title":"Cisco Programming","slug":"cisco-programming","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33598"},"image":{"src":"/img/background-image-2.fabfbd5c.png","width":0,"height":0},"hasArticle":true,"hasBook":false,"articleCount":1,"bookCount":0},{"categoryId":33599,"title":"Coding","slug":"coding","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33599"},"image":{"src":"/img/background-image-1.daf74cf0.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":106,"bookCount":5},{"categoryId":33600,"title":"HTML","slug":"html","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33600"},"image":{"src":"/img/background-image-2.fabfbd5c.png","width":0,"height":0},"hasArticle":true,"hasBook":false,"articleCount":8,"bookCount":0},{"categoryId":33601,"title":"HTML5","slug":"html5","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33601"},"image":{"src":"/img/background-image-1.daf74cf0.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":265,"bookCount":2},{"categoryId":33602,"title":"Java","slug":"java","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33602"},"image":{"src":"/img/background-image-2.fabfbd5c.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":122,"bookCount":6},{"categoryId":33603,"title":"JavaScript","slug":"javascript","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33603"},"image":{"src":"/img/background-image-1.daf74cf0.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":87,"bookCount":4},{"categoryId":33604,"title":"MATLAB","slug":"matlab","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33604"},"image":{"src":"/img/background-image-2.fabfbd5c.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":83,"bookCount":1},{"categoryId":33606,"title":"Python","slug":"python","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33606"},"image":{"src":"/img/background-image-1.daf74cf0.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":83,"bookCount":5},{"categoryId":33607,"title":"R","slug":"r","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33607"},"image":{"src":"/img/background-image-2.fabfbd5c.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":99,"bookCount":4},{"categoryId":33608,"title":"SQL","slug":"sql","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33608"},"image":{"src":"/img/background-image-1.daf74cf0.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":26,"bookCount":3},{"categoryId":33610,"title":"General Programming & Web Design","slug":"general-programming-web-design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33610"},"image":{"src":"/img/background-image-2.fabfbd5c.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":208,"bookCount":34},{"categoryId":34324,"title":"CSS3","slug":"css3","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/34324"},"image":{"src":"/img/background-image-1.daf74cf0.png","width":0,"height":0},"hasArticle":true,"hasBook":false,"articleCount":4,"bookCount":0},{"categoryId":34338,"title":"Web Hosting","slug":"web-hosting","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/34338"},"image":{"src":"/img/background-image-2.fabfbd5c.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":6,"bookCount":1},{"categoryId":34376,"title":"Blogging & Website Platforms","slug":"blogging-website-platforms","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/34376"},"image":{"src":"/img/background-image-1.daf74cf0.png","width":0,"height":0},"hasArticle":true,"hasBook":true,"articleCount":66,"bookCount":9}],"description":"Ever wonder what makes the software, websites, and blogs you use every day function properly (or improperly)? It's programming. Our articles reveal the ins and outs of programming and web design.","relatedArticles":{"self":"//dummies-api.coursofppt.com/v2/articles?category=33592&offset=0&size=5"},"hasArticle":true,"hasBook":true,"articleCount":1394,"bookCount":94},"_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33592"}},"relatedCategoriesLoadedStatus":"success"},"listState":{"list":{"count":10,"total":1394,"items":[{"headers":{"creationTime":"2017-03-27T16:49:33+00:00","modifiedTime":"2025-01-18T18:44:02+00:00","timestamp":"2025-01-18T21:01:08+00:00"},"data":{"breadcrumbs":[{"name":"Technology","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33512"},"slug":"technology","categoryId":33512},{"name":"Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33592"},"slug":"programming-web-design","categoryId":33592},{"name":"Blogging & Website Platforms","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/34376"},"slug":"blogging-website-platforms","categoryId":34376},{"name":"WordPress","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33609"},"slug":"wordpress","categoryId":33609}],"title":"WordPress All-in-One For Dummies Cheat Sheet","strippedTitle":"wordpress all-in-one for dummies cheat sheet","slug":"wordpress-all-in-one-for-dummies-cheat-sheet","canonicalUrl":"","收指数擎整合调整":{"metaDescription":"Start by familiarizing yourself with the WordPress dashboard, then learn where to find more support for managing WordPress site content with this cheat sheet.","noIndex":0,"noFollow":0},"content":"Tailor your blog with WordPress software, whether you're writing, editing, or publishing WordPress site content. An understanding of WordPress's dashboard controls and of the types of content available to you helps you get the most out of your website. Also, when all else fails, it's good to know where you can turn to for help with WordPress.","description":"Tailor your blog with WordPress software, whether you're writing, editing, or publishing WordPress site content. An understanding of WordPress's dashboard controls and of the types of content available to you helps you get the most out of your website. Also, when all else fails, it's good to know where you can turn to for help with WordPress.","blurb":"","authors":[{"authorId":9028,"name":"Lisa Sabin-Wilson","slug":"lisa-sabin-wilson","description":" <p><b>Lisa Sabin&#45;Wilson</b> is cofounder of WebDevStudios, one of the largest WordPress design and development agencies in the world. She is a regular public speaker at national events on topics such as WordPress, development, design, CSS, and social media. ","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9028"}}],"primaryCategoryTaxonomy":{"categoryId":33609,"title":"WordPress","slug":"wordpress","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33609"}},"secondaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"tertiaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"trendingArticles":null,"inThisArticle":[],"relatedArticles":{"fromBook":[{"articleId":167476,"title":"Designing a Website with WordPress Designers","slug":"designing-a-website-with-wordpress-designers","categoryList":["technology","programming-web-design","blogging-website-platforms","wordpress"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/167476"}},{"articleId":163671,"title":"Filter by Internet Protocol (IP) Address to Limit Access to the WordPress Dashboard","slug":"filter-by-internet-protocol-ip-address-to-limit-access-to-the-wordpress-dashboard","categoryList":["technology","programming-web-design","blogging-website-platforms","wordpress"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/163671"}}],"fromCategory":[{"articleId":244958,"title":"Contemplating the Structure of Your WordPress Website","slug":"contemplating-structure-wordpress-website","categoryList":["technology","programming-web-design","blogging-website-platforms","wordpress"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244958"}},{"articleId":244955,"title":"How to Use Tags with Parameters for Sidebars in WordPress","slug":"use-tags-parameters-sidebars-wordpress","categoryList":["technology","programming-web-design","blogging-website-platforms","wordpress"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244955"}},{"articleId":244951,"title":"How to Use Sidebar Templates in WordPress","slug":"use-sidebar-templates-wordpress","categoryList":["technology","programming-web-design","blogging-website-platforms","wordpress"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244951"}},{"articleId":244948,"title":"Getting WordPress to Check for Your Custom Field","slug":"getting-wordpress-check-custom-field","categoryList":["technology","programming-web-design","blogging-website-platforms","wordpress"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244948"}},{"articleId":244944,"title":"Entering the Custom Field Code in the WordPress Template File","slug":"entering-custom-field-code-wordpress-template-file","categoryList":["technology","programming-web-design","blogging-website-platforms","wordpress"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244944"}}]},"hasRelatedBookFromSearch":false,"relatedBook":{"bookId":281904,"slug":"wordpress-all-in-one-for-dummies-4th-edition","isbn":"9781394225385","categoryList":["technology","programming-web-design","blogging-website-platforms","wordpress"],"amazon":{"default":"//www.amazon.com/gp/product/1394225385/ref=as_li_tl?ie=UTF8&tag=wiley01-20","ca":"//www.amazon.ca/gp/product/1394225385/ref=as_li_tl?ie=UTF8&tag=wiley01-20","indigo_ca":"//www.tkqlhce.com/click-9208661-13710633?url=//www.chapters.indigo.ca/en-ca/books/product/1394225385-item.html&cjsku=978111945484","gb":"//www.amazon.co.uk/gp/product/1394225385/ref=as_li_tl?ie=UTF8&tag=wiley01-20","de":"//www.amazon.de/gp/product/1394225385/ref=as_li_tl?ie=UTF8&tag=wiley01-20"},"image":{"src":"//coursofppt.com/wp-content/uploads/wordpress-all-in-one-for-dummies-5th-edition-cover-9781394225385-203x255.jpg","width":203,"height":255},"title":"WordPress All-in-One For Dummies","testBankPinActivationLink":"","bookOutOfPrint":true,"authorsInfo":"<p><p><b>Lisa Sabin&#45;Wilson</b> is cofounder of WebDevStudios, one of the largest WordPress design and development agencies in the world. She is a regular public speaker at national events on topics such as WordPress, development, design, CSS, and social media.</p>","authors":[{"authorId":9028,"name":"Lisa Sabin-Wilson","slug":"lisa-sabin-wilson","description":" <p><b>Lisa Sabin&#45;Wilson</b> is cofounder of WebDevStudios, one of the largest WordPress design and development agencies in the world. She is a regular public speaker at national events on topics such as WordPress, development, design, CSS, and social media. ","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9028"}}],"_links":{"self":"//dummies-api.coursofppt.com/v2/books/"}},"collections":[],"articleAds":{"footerAd":"<div class=\"du-ad-region row\" id=\"article_page_adhesion_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_adhesion_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;blogging-website-platforms&quot;,&quot;wordpress&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781394225385&quot;]}]\" id=\"du-slot-65a9919491b41\"></div></div>","rightAd":"<div class=\"du-ad-region row\" id=\"article_page_right_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_right_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;blogging-website-platforms&quot;,&quot;wordpress&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781394225385&quot;]}]\" id=\"du-slot-65a9919493b66\"></div></div>"},"articleType":{"articleType":"Cheat Sheet","articleList":[{"articleId":167484,"title":"The WordPress Dashboard","slug":"the-wordpress-dashboard","categoryList":[],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/167484"}},{"articleId":167485,"title":"WordPress Content Types","slug":"wordpress-content-types","categoryList":[],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/167485"}},{"articleId":167479,"title":"WordPress Resources","slug":"wordpress-resources","categoryList":[],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/167479"}},{"articleId":167476,"title":"Designing a Website with WordPress Designers","slug":"designing-a-website-with-wordpress-designers","categoryList":["technology","programming-web-design","blogging-website-platforms","wordpress"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/167476"}}],"content":[{"title":"The WordPress dashboard","thumb":null,"image":null,"content":"<p>The WordPress Dashboard gives you an all-in-one glance at your website’s statistics and activity. This table gives you brief descriptions of the main menu items in the WordPress Dashboard that apply across all versions of WordPress.com and WordPress.org. Each version provides different options, but the basic main menu of the Dashboard is standard across all versions.</p>\n<table>\n<tbody>\n<tr>\n<th>Menu</th>\n<th>Description</th>\n</tr>\n<tr>\n<td>Dashboard</td>\n<td>Find basic information and statistics for your site, as well as information from the WordPress Development Site and other sites run by those involved with WordPress development or resources.</td>\n</tr>\n<tr>\n<td>Posts</td>\n<td>Write new posts and edit previous ones. Create categories to organize your posts by topic; upload images; create post excerpts; send trackbacks; manage custom fields.</td>\n</tr>\n<tr>\n<td>Media</td>\n<td>View all media files you’ve uploaded to your site, including images, audio, and video. Upload and manage new media files with the built-in media uploader.</td>\n</tr>\n<tr>\n<td>Pages</td>\n<td>Write and publish new static pages for your site, edit or delete previously published pages, and assign pages to custom page templates.</td>\n</tr>\n<tr>\n<td>Comments</td>\n<td>Manage comments here by viewing, editing, or deleting them; also manage your comment moderation queue and comment/trackback spam.</td>\n</tr>\n<tr>\n<td>Appearance</td>\n<td>Manage your WordPress themes by viewing them, activating them, and editing them using the site editor. Use and create block patterns.</td>\n</tr>\n<tr>\n<td>Plugins</td>\n<td>View a listing of plugins installed in your WordPress site. Find new plugins, and install, activate, deactivate, upgrade, and edit them.</td>\n</tr>\n<tr>\n<td>Users</td>\n<td>Manage your users and subscribers and edit your own profile.</td>\n</tr>\n<tr>\n<td>Tools</td>\n<td>Import data into your site from another content management platform (such as Blogger, Typepad, or Movable Type) or export your current site data into a backup file. Upgrade your WordPress software to the latest version using the auto-upgrade feature.</td>\n</tr>\n<tr>\n<td>Settings</td>\n<td>Set the general options for your site, and find settings for posts, RSS feed, discussion options, privacy, and permalinks.</td>\n</tr>\n</tbody>\n</table>\n"},{"title":"WordPress content types","thumb":null,"image":null,"content":"<p>Content is the lifeblood of a website, regardless of author or topic. Populate your site with a variety of content types to engage reader interest and to ensure return visits. WordPress offers several types of content that can be published on your website using the different, built-in features.</p>\n<table>\n<tbody>\n<tr>\n<th>Menu</th>\n<th>Description</th>\n</tr>\n<tr>\n<td>Posts</td>\n<td>Articles that get written and published to your site — posts are included as part of your archived site.</td>\n</tr>\n<tr>\n<td>Pages</td>\n<td>Static, individual pages do not get published and archived as part of the site on your site; rather are used as standalone pages to publish items like an &#8220;About Me&#8221; page.</td>\n</tr>\n<tr>\n<td>Categories</td>\n<td>File your blog posts into different topics.</td>\n</tr>\n<tr>\n<td>Tags</td>\n<td>Define micro-categories for your posts by using tags to define extended keywords to help your readers locate posts on your site relevant to the topic they want to read about.</td>\n</tr>\n<tr>\n<td>Images and Galleries</td>\n<td>Upload photos or images and create photo galleries, or a portfolio of images.</td>\n</tr>\n<tr>\n<td>Media files</td>\n<td>Upload audio files for podcasting, or video files for video publishing. Even upload files like PDFs or Microsoft Word documents to provide downloadable content, like e-books or manuals.</td>\n</tr>\n<tr>\n<td>Custom Post Types</td>\n<td>Create different methods of posting niche content types on your site, like a photo gallery, video gallery, or a repository of reviews for things like movies, books, and music (just to name a few of many examples).</td>\n</tr>\n<tr>\n<td>Custom Post Formats</td>\n<td>Create customized display of different post formats like photos, quotes, posts, links, videos, and so on.</td>\n</tr>\n<tr>\n<td>Custom Fields</td>\n<td>Use custom fields to attach different post metadata to individual posts and pages, like your current mood, what you&#8217;re currently listening to or your current local weather.</td>\n</tr>\n</tbody>\n</table>\n"},{"title":"WordPress resources","thumb":null,"image":null,"content":"<p>If you use WordPress as the platform for your blog or website, you can make use of any or all of the many tools WordPress offers. Tap into some solid information from WordPress user forums, get ideas for themes, and boost your WordPress knowledge.</p>\n<table>\n<tbody>\n<tr>\n<td width=\"249\">Name</td>\n<td width=\"480\">Description</td>\n</tr>\n<tr>\n<td width=\"249\"><a href=\"//wordpress.org/plugins/\" target=\"_blank\" rel=\"noopener\">WordPress Plugins</a></td>\n<td width=\"480\">Offers thousands of downloads that let you do almost anything you can imagine — and you can imagine quite a lot, can&#8217;t you?</td>\n</tr>\n<tr>\n<td width=\"249\"><a href=\"//wordpress.org/themes\" target=\"_blank\" rel=\"noopener\">WordPress Themes</a></td>\n<td width=\"480\">Lets you choose from hundreds of themes to manage the look and functionality of your home page.</td>\n</tr>\n<tr>\n<td width=\"249\"><a href=\"//wordpress.org/documentation/\" target=\"_blank\" rel=\"noopener\">WordPress Documentation</a></td>\n<td width=\"480\">Use WordPress Documentation to tap into the encyclopedia of WordPress knowledge.</td>\n</tr>\n<tr>\n<td width=\"249\"><a href=\"//wordpress.org/news/\" target=\"_blank\" rel=\"noopener\">WordPress News &amp; Updates</a></td>\n<td width=\"480\">This section of the official WordPress website gives you the latest news and notes on all things WordPress.</td>\n</tr>\n<tr>\n<td width=\"249\"><a href=\"//wordpress.com/forums/\" target=\"_blank\" rel=\"noopener\">Support Forums for WordPress.com</a></td>\n<td width=\"480\">Lets you post questions, answers, and comments for other WordPress users who are using the hosted/commercial version of WordPress.com.</td>\n</tr>\n<tr>\n<td width=\"249\"><a href=\"//wordpress.org/support/forums/\" target=\"_blank\" rel=\"noopener\">Support Forums for WordPress.org</a></td>\n<td width=\"480\">Post your questions and obtain answers from the vast WordPress community for users of the self-hosted WordPress.org software.</td>\n</tr>\n</tbody>\n</table>\n"},{"title":"Designing a website with WordPress designers","thumb":null,"image":null,"content":"<p>Turn to WordPress designers if you need help designing your website. The look and feel of your website are critical to its success, so take your time when choosing themes, color, and layout. If you&#8217;re looking for a cool theme, or someone to add pizzazz to your site through design, you want that person to know your WordPress platform. These designers fit the bill.</p>\n<table width=\"67%\">\n<tbody>\n<tr>\n<td width=\"47%\"><strong>Name / URL</strong></td>\n<td width=\"52%\"><strong>Description</strong></td>\n</tr>\n<tr>\n<td width=\"47%\"><a href=\"//webdevstudios.com/\" target=\"_blank\" rel=\"noopener\">WebDevStudios</a></td>\n<td width=\"52%\">Cutting edge, custom WordPress design and development</td>\n</tr>\n<tr>\n<td width=\"47%\"><a href=\"//freshysites.com/\" target=\"_blank\" rel=\"noopener\">Freshy Sites</a></td>\n<td width=\"52%\">WordPress web design services</td>\n</tr>\n<tr>\n<td width=\"47%\"><a href=\"//www.kadencewp.com/\" target=\"_blank\" rel=\"noopener\">KadenceWP</a></td>\n<td width=\"52%\">Purchase and download easy-to-use WordPress premium themes.</td>\n</tr>\n<tr>\n<td width=\"47%\"><a href=\"//greenbay.digital/\" target=\"_blank\" rel=\"noopener\">GB Digital</a></td>\n<td width=\"52%\">Custom WordPress design and development for small businesses and organizations</td>\n</tr>\n</tbody>\n</table>\n"}],"videoInfo":{"videoId":null,"name":null,"accountId":null,"playerId":null,"thumbnailUrl":null,"description":null,"uploadDate":null}},"sponsorship":{"sponsorshipPage":false,"backgroundImage":{"src":null,"width":0,"height":0},"brandingLine":"","brandingLink":"","brandingLogo":{"src":null,"width":0,"height":0},"sponsorAd":"","sponsorEbookTitle":"","sponsorEbookLink":"","sponsorEbookImage":{"src":null,"width":0,"height":0}},"primaryLearningPath":"Advance","lifeExpectancy":"Two years","lifeExpectancySetFrom":"2023-03-02T00:00:00+00:00","dummiesForKids":"no","sponsoredContent":"no","adInfo":"","adPairKey":[]},"status":"publish","visibility":"public","articleId":207989},{"headers":{"creationTime":"2019-03-13T01:35:22+00:00","modifiedTime":"2025-01-05T20:44:23+00:00","timestamp":"2025-01-05T21:01:13+00:00"},"data":{"breadcrumbs":[{"name":"Technology","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33512"},"slug":"technology","categoryId":33512},{"name":"Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33592"},"slug":"programming-web-design","categoryId":33592},{"name":"General Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33610"},"slug":"general-programming-web-design","categoryId":33610}],"title":"Web Coding and Development All-in-One For Dummies Cheat Sheet","strippedTitle":"web coding and development all-in-one for dummies cheat sheet","slug":"web-coding-development-cheat-sheet","canonicalUrl":"","收指数擎整合调整":{"metaDescription":"One of the handiest features of web coding and development is that once you’ve learned a few basics, you can apply those basics to any project. A good example i","noIndex":0,"noFollow":0},"content":"One of the handiest features of web coding and development is that once you’ve learned a few basics, you can apply those basics to any project. A good example is the underlying structure of a page, which uses the same set of standard HTML tags, no matter how large or small the project. It’s also worth your time to learn how selectors work, because you use them to save you time both when you’re writing CSS rules and when you’re writing JavaScript code. Errors, too, are a fact of web coding life, so understanding the most common errors can help you debug your code faster and get back to more creative pursuits.","description":"One of the handiest features of web coding and development is that once you’ve learned a few basics, you can apply those basics to any project. A good example is the underlying structure of a page, which uses the same set of standard HTML tags, no matter how large or small the project. It’s also worth your time to learn how selectors work, because you use them to save you time both when you’re writing CSS rules and when you’re writing JavaScript code. Errors, too, are a fact of web coding life, so understanding the most common errors can help you debug your code faster and get back to more creative pursuits.","blurb":"","authors":[{"authorId":11290,"name":"Paul McFedries","slug":"paul-mcfedries","description":" <p><b>Paul McFedries</b> is a technical writer who has been authoring computer books since 1991 and has over 100 books to his credit. These books include <i>Alexa For Dummies, Amazon Fire TV For Dummies</i>, and <i>Cord Cutting For Dummies</i>. You can visit Paul on the web at www.mcfedries.com.</p> ","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/11290"}}],"primaryCategoryTaxonomy":{"categoryId":33610,"title":"General Programming & Web Design","slug":"general-programming-web-design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33610"}},"secondaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"tertiaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"trendingArticles":null,"inThisArticle":[],"relatedArticles":{"fromBook":[{"articleId":254314,"title":"Working with Images in a Mobile App","slug":"working-images-mobile-app","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/254314"}},{"articleId":254311,"title":"Going Mobile Faster with jQuery Mobile","slug":"going-mobile-faster-jquery-mobile","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/254311"}},{"articleId":254308,"title":"What Is Mobile-First Web Development?","slug":"mobile-first-web-development","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/254308"}},{"articleId":254305,"title":"Setting Up the Back End to Handle Users","slug":"setting-back-end-handle-users","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/254305"}},{"articleId":254302,"title":"Creating the App Startup Files for Your Web App","slug":"creating-app-startup-files-web-app","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/254302"}}],"fromCategory":[{"articleId":299575,"title":"HTML, CSS, & JavaScript All-in-One For Dummies Cheat Sheet","slug":"html-css-javascript-all-in-one-for-dummies-cheat-sheet","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/299575"}},{"articleId":265680,"title":"Using DevOps To Improve Engineering","slug":"tips-for-improving-engineering-performance-with-devops","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265680"}},{"articleId":265675,"title":"How To Automate DevOps in the Cloud","slug":"make-more-of-your-cloud-tools-automating-devops-in-the-cloud","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265675"}},{"articleId":265672,"title":"How To Choose a Cloud Service Provider for DevOps","slug":"choosing-the-best-cloud-service-provider-features-and-tools-for-devops","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265672"}},{"articleId":265664,"title":"How to Form DevOps Teams in Your Organization","slug":"how-to-form-devops-teams-in-your-organization","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265664"}}]},"hasRelatedBookFromSearch":false,"relatedBook":{"bookId":281889,"slug":"web-coding-development-all-in-one-for-dummies","isbn":"9781394197026","categoryList":["technology","programming-web-design","general-programming-web-design"],"amazon":{"default":"//www.amazon.com/gp/product/1394197020/ref=as_li_tl?ie=UTF8&tag=wiley01-20","ca":"//www.amazon.ca/gp/product/1394197020/ref=as_li_tl?ie=UTF8&tag=wiley01-20","indigo_ca":"//www.tkqlhce.com/click-9208661-13710633?url=//www.chapters.indigo.ca/en-ca/books/product/1394197020-item.html&cjsku=978111945484","gb":"//www.amazon.co.uk/gp/product/1394197020/ref=as_li_tl?ie=UTF8&tag=wiley01-20","de":"//www.amazon.de/gp/product/1394197020/ref=as_li_tl?ie=UTF8&tag=wiley01-20"},"image":{"src":"//coursofppt.com/wp-content/uploads/web-coding-and-development-all-in-one-for-dummies-cover-9781394197026-203x255.jpg","width":203,"height":255},"title":"Web Coding & Development All-in-One For Dummies","testBankPinActivationLink":"","bookOutOfPrint":true,"authorsInfo":"<p><b><b data-author-id=\"11290\">Paul McFedries</b></b> is a technical writer who has been authoring computer books since 1991 and has over 100 books to his credit. These books include <i>Alexa For Dummies, Amazon Fire TV For Dummies</i>, and <i>Cord Cutting For Dummies</i>. You can visit Paul on the web at www.mcfedries.com.</p>","authors":[{"authorId":11290,"name":"Paul McFedries","slug":"paul-mcfedries","description":" <p><b>Paul McFedries</b> is a technical writer who has been authoring computer books since 1991 and has over 100 books to his credit. These books include <i>Alexa For Dummies, Amazon Fire TV For Dummies</i>, and <i>Cord Cutting For Dummies</i>. You can visit Paul on the web at www.mcfedries.com.</p> ","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/11290"}}],"_links":{"self":"//dummies-api.coursofppt.com/v2/books/"}},"collections":[],"articleAds":{"footerAd":"<div class=\"du-ad-region row\" id=\"article_page_adhesion_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_adhesion_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;general-programming-web-design&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781394197026&quot;]}]\" id=\"du-slot-65986e19e535e\"></div></div>","rightAd":"<div class=\"du-ad-region row\" id=\"article_page_right_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_right_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;general-programming-web-design&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781394197026&quot;]}]\" id=\"du-slot-65986e19e5c25\"></div></div>"},"articleType":{"articleType":"Cheat Sheet","articleList":[{"articleId":250699,"title":"Your Web Development Template","slug":"web-development-template","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/250699"}},{"articleId":250696,"title":"4 Selectors in CSS and jQuery","slug":"4-selectors-css-jquery","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/250696"}},{"articleId":250693,"title":"Top 10 JavaScript Errors","slug":"top-10-javascript-errors","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/250693"}}],"content":[{"title":"Your Web Development Template","thumb":null,"image":null,"content":"<p>All web pages start out with the same basic HTML structure, so you can get any new web development project off on the right foot by first laying down that foundation. You can do this most easily by creating a template file that you can copy for each new web coding project. Here are the HTML tags to add to your template:</p>\n<pre class=\"code\">&lt;!DOCTYPE html&gt;\r\n&lt;html lang=\"en\"&gt;\r\n&lt;head&gt;\r\n &lt;meta charset=\"utf-8\"&gt;\r\n &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"&gt;\r\n &lt;title&gt;&lt;/title&gt;\r\n &lt;link href=\"styles.css\" rel=\"stylesheet\"&gt;\r\n &lt;script src=\"code.js\" defer&gt;&lt;/script&gt;\r\n&lt;/head&gt;\r\n&lt;body&gt;\r\n &lt;header&gt;\r\n &lt;/header&gt;\r\n &lt;nav&gt;\r\n &lt;/nav&gt;\r\n &lt;main&gt;\r\n &lt;article&gt;\r\n &lt;/article&gt;\r\n &lt;aside&gt;\r\n &lt;/aside&gt;\r\n &lt;/main&gt;\r\n &lt;footer&gt;\r\n &lt;/footer&gt;\r\n&lt;/body&gt;\r\n&lt;/html&gt;\r\n</pre>\n<p class=\"article-tips remember\">For the <code>&lt;link&gt;</code> and <code>&lt;script&gt;</code> tags, be sure to adjust the filenames as needed, and be sure to add the path to each file if you’ve stored the files in subdirectories.</p>\n"},{"title":"Selectors in CSS and JavaScript","thumb":null,"image":null,"content":"<p>Both CSS and JavaScript save you oodles of time by making it easy to format and program page elements. These two technologies become even more powerful when you use selectors to specify which elements you want to work with:</p>\n<p>* <strong>The class selector:</strong> If you’ve use the <code>class</code> attribute to assign a class name to one or more page elements, you can target those elements by using a <em>class selector</em>:</p>\n<p>HTML:</p>\n<pre class=\"code\">&lt;<em>element</em> class=\"<em>class-name</em>\"&gt;</pre>\n<p>CSS:</p>\n<pre class=\"code\">.<em>class-name</em> {\r\n\r\n <em>property1</em>: <em>value1</em>;\r\n\r\n <em>property2</em>: <em>value2</em>;\r\n\r\n etc.\r\n\r\n}</pre>\n<p>JavaScript:</p>\n<pre class=\"code\">document.querySelector('.<em>class-name</em>')</pre>\n<p>or:</p>\n<pre class=\"code\">document.querySelectorAll('.<em>class-name</em>')</pre>\n<p>* <strong>The id selector:</strong> If you’ve use the <code>id</code> attribute to assign an ID to a page element, you can target that element by using an <em>id selector</em>:</p>\n<p>HTML:</p>\n<pre class=\"code\">&lt;<em>element</em> id=\"<em>id-name</em>\"&gt;</pre>\n<p>CSS:</p>\n<pre class=\"code\">#<em>id-name</em> {\r\n\r\n <em>property1</em>: <em>value1</em>;\r\n\r\n <em>property2</em>: <em>value2</em>;\r\n\r\n etc.\r\n\r\n}</pre>\n<p>JavaScript:</p>\n<pre class=\"code\">document.querySelector('#<em>id-name</em>')</pre>\n<p>* <strong>The descendant combinator:</strong> To target every element that is contained in (that is, is a descendant of) a specified ancestor element, use the <em>descendant combinator</em> (a space):</p>\n<p>CSS:</p>\n<pre class=\"code\"><em>ancestor</em> <em>descendant</em> {\r\n\r\n <em>property1</em>: <em>value1</em>;\r\n\r\n <em>property2</em>: <em>value2</em>;\r\n\r\n etc.\r\n\r\n}</pre>\n<p>JavaScript:</p>\n<pre class=\"code\">document.querySelector('<em>ancestor</em> <em>descendant</em>')</pre>\n<p>or:</p>\n<pre class=\"code\">document.querySelectorAll('<em>ancestor</em> <em>descendant</em>')</pre>\n<p>* <strong>The child combinator:</strong> To target every element that resides one level below (that is, is a child of) a specified parent element, use the <em>child combinator</em>:</p>\n<p>CSS:</p>\n<pre class=\"code\"><em>parent</em> &gt; <em>child</em> {\r\n\r\n <em>property1</em>: <em>value1</em>;\r\n\r\n <em>property2</em>: <em>value2</em>;\r\n\r\netc.\r\n\r\n}</pre>\n<p>JavaScript:</p>\n<pre class=\"code\">document.querySelector('<em>parent &gt; child</em>')</pre>\n<p>or:</p>\n<pre class=\"code\">document.querySelectorAll('<em>parent &gt; child</em>')</pre>\n<p>* <strong>The subsequent-sibling combinator:</strong> To target every element that appears in the HTML after a specified reference element and is a sibling of that element, use the <em>subsequent-sibling combinator</em>:</p>\n<p>CSS:</p>\n<pre class=\"code\"><em>reference </em>~<em> target</em> {\r\n\r\n <em>property1</em>: <em>value1</em>;\r\n\r\n <em>property2</em>: <em>value2</em>;\r\n\r\n etc.\r\n\r\n}</pre>\n<p>JavaScript:</p>\n<pre class=\"code\">document.querySelector('<em>reference ~ target</em>)</pre>\n<p>or:</p>\n<pre class=\"code\">document.querySelectorAll('<em>reference ~ target</em>')</pre>\n<p>* <strong>The next-sibling combinator:</strong> To target the next sibling that comes after a reference element, use the <em>next-sibling combinator</em>:</p>\n<p>CSS:</p>\n<pre class=\"code\"><em>reference </em>+<em> target</em> {\r\n\r\n <em>property1</em>: <em>value1</em>;\r\n\r\n <em>property2</em>: <em>value2</em>;\r\n\r\n etc.\r\n\r\n}</pre>\n<p>JavaScript:</p>\n<pre class=\"code\">document.querySelector('<em>reference </em>+<em> target</em>')</pre>\n<p>or:</p>\n<pre class=\"code\">document.querySelectorAll('<em>reference </em>+<em> target</em>')</pre>\n"},{"title":"Top 10 JavaScript Errors","thumb":null,"image":null,"content":"<p>When you encounter a script problem, the first thing you should do is examine your code for the most common errors. To help you do that, here’s a list of the 10 most common errors made by both beginning and experienced programmers:</p>\n<ul>\n<li><strong>JavaScript keywords as variable names:</strong> JavaScript has many reserved words and keywords built into the language, so it’s common to accidentally use one of these words as a variable or function name. Double-check your names to make sure you’re not using any reserved words or the names of any objects, properties, or methods.</li>\n<li><strong>Misspelled variables and other names:</strong> Check your variable and function names to make sure you spell them consistently throughout the script. Also, check the spelling of the objects, properties, and methods you use.</li>\n<li><strong>Misused uppercase and lowercase letters:</strong> JavaScript is a <em>case-sensitive</em> language, which means that it treats each letter differently depending on whether it’s uppercase or lowercase. For example, consider the following two statements:\n<pre class=\"code\">const firstName = \"Millicent\";\r\nconst message = \"Welcome \" + firstname;\r\n</pre>\n<p>The first statement declares a variable named <code>firstName</code>, but the second statement uses <code>firstname</code>. This code would generate the error <code>firstname is not defined</code> (or something similar, depending on the browser) because to JavaScript, <code>firstname</code> is a different (and uninitialized) variable.</li>\n<li><strong>Mismatched quotation marks:</strong> In any statement where you began a string literal with a quotation mark (<code>\"</code> or <code>'</code>), always check to make sure that you included the corresponding closing quotation mark at the end of the string. Also, check to see if you used one or more instances of the same quotation mark within the string. If so, edit the string to use the proper escape sequence (<code>\\\"</code> or <code>\\'</code>), instead:\n<pre class=\"code\">// Bad\r\nconst myString = \"There are no \"bad\" programs.\";\r\n\t\r\n// Better\r\nconst myString = \"There are no \\\"bad\\\" programs.\";\r\n\r\n// Best\r\nconst myString = `There are no \"bad\" programs.`;</pre>\n</li>\n<li><strong>Mismatched parentheses:</strong> Look for statements that contain a left parenthesis — <code>(</code> — and make sure there’s a corresponding right parentheses — <code>)</code>. This also applies to square brackets — <code>[</code> and <code>]</code>.\n<p class=\"article-tips tip\">For complex expressions that include three or more sets of parentheses, a quick match-up check is to count the number of left parentheses in the expression, and then count the number of right parentheses. If these numbers don’t match, then you know you have a mismatch somewhere in the expression.</p>\n</li>\n<li><strong>Missed parentheses after function names:</strong> Speaking of parentheses, if your script calls a function or method that doesn’t take any arguments, check that you included the parentheses — <code>( )</code> — after the name of the function or method:\n<pre class=\"code\">function tryThis() {\r\n alert(\"Parentheses travel in pairs!\");\r\n}\r\n\r\n// This won't work\r\ntryThis;\r\n\r\n// This will\r\ntryThis();</pre>\n</li>\n<li><strong>Improper use of braces:</strong> JavaScript uses braces to mark the start (<code>{</code>) and end (<code>}</code>) of statement blocks associated with functions, tests involving <code>if()</code> and <code>switch()</code>, and loops, including <code>for()</code>, <code>while()</code>, and <code>do...while()</code>. It’s very easy to miss one or both braces in a block, and it’s even easier to get the braces mixed up when nesting one test or loop inside another. Double-check your braces to make sure each block has both an opening and a closing brace.\n<p class=\"article-tips tip\">One way to ensure that you don’t miss any braces is to position them consistently throughout your script. For example, many people prefer to use the traditional style for brace positions:</p>\n<pre class=\"code\">keyword {\r\n statements\r\n}</pre>\n<p>(Here, <em><code>keyword</code> </em>means the statement — such as function or <code>if()</code> — that defines the block.) If you prefer this style, use it all through your script so that you know exactly where to look for each brace.</p>\n<p>An easy way to ensure that you never forget a closing brace is to enter it immediately after entering the opening brace. That is, you type <code>{</code>, press Enter twice, and then type <code>}</code>.</p>\n<p>Also, use indentation consistently for the statements within the block. This makes it much easier to see the braces, particularly when you have one block nested within another.</li>\n<li><strong>Using <code>=</code> or <code>==</code> instead of <code>===</code>:</strong> The identity operator (<code>===</code>) is one of the least intuitive JavaScript features because the assignment operator (<code>=</code>) feels so much more natural. The equality operator (<code>==</code>) can cause problems because it often converts the data types before making the comparison. Therefore, check all your comparison expressions to make sure you always use <code>===</code> instead of <code>=</code> or <code>==</code>.</li>\n<li><strong>Conflicts between local and global variables</strong><strong>:</strong> A global variable is available throughout the entire page, even within functions. So, within a function, make sure that you don’t declare and use a variable that has the same name as a global variable.</li>\n<li><strong>The use of a page element before it’s loaded</strong><strong>:</strong> JavaScript runs through a page’s HTML one line at a time and checks the syntax of each JavaScript statement as it comes to it. If your code refers to an element (such as a form field) that JavaScript hasn’t come to yet, it generates an error. Therefore, if your code deals with an element, always place the script after the element in the HTML file.</li>\n</ul>\n"}],"videoInfo":{"videoId":null,"name":null,"accountId":null,"playerId":null,"thumbnailUrl":null,"description":null,"uploadDate":null}},"sponsorship":{"sponsorshipPage":false,"backgroundImage":{"src":null,"width":0,"height":0},"brandingLine":"","brandingLink":"","brandingLogo":{"src":null,"width":0,"height":0},"sponsorAd":"","sponsorEbookTitle":"","sponsorEbookLink":"","sponsorEbookImage":{"src":null,"width":0,"height":0}},"primaryLearningPath":"Advance","lifeExpectancy":"Two years","lifeExpectancySetFrom":"2025-01-05T00:00:00+00:00","dummiesForKids":"no","sponsoredContent":"no","adInfo":"","adPairKey":[]},"status":"publish","visibility":"public","articleId":250703},{"headers":{"creationTime":"2017-03-27T16:51:46+00:00","modifiedTime":"2024-11-13T14:37:39+00:00","timestamp":"2024-11-13T15:01:10+00:00"},"data":{"breadcrumbs":[{"name":"Technology","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33512"},"slug":"technology","categoryId":33512},{"name":"Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33592"},"slug":"programming-web-design","categoryId":33592},{"name":"General Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33610"},"slug":"general-programming-web-design","categoryId":33610}],"title":"Building Websites All-in-One For Dummies Cheat Sheet","strippedTitle":"building websites all-in-one for dummies cheat sheet","slug":"building-websites-all-in-one-for-dummies-cheat-sheet","canonicalUrl":"","收指数擎整合调整":{"metaDescription":"Note: The following cheat sheet is from Building Websites All-in-One For Dummies which published in 2012; therefore, this content may be outdated. For more curr","noIndex":1,"noFollow":0},"content":"Note: The following cheat sheet is from <em>Building Websites All-in-One For Dummies</em> which published in 2012; therefore, this content may be outdated. For more current information on website building, please see <a href=\"//coursofppt.com/book/technology/programming-web-design/general-programming-web-design/html-css-javascript-all-in-one-for-dummies-299520/\">HTML, CSS, & JavaScript All-in-One For Dummies</a>.\r\n\r\nWhether complex or simple, websites require that you make decisions — such as color, theme, and tone — and that you juggle many pieces of the project — like code, style sheets, and graphics. Knowing which resources to turn to for help implementing HTML5, and a few key points about incorporating graphics and video, can help you.","description":"Note: The following cheat sheet is from <em>Building Websites All-in-One For Dummies</em> which published in 2012; therefore, this content may be outdated. For more current information on website building, please see <a href=\"//coursofppt.com/book/technology/programming-web-design/general-programming-web-design/html-css-javascript-all-in-one-for-dummies-299520/\">HTML, CSS, & JavaScript All-in-One For Dummies</a>.\r\n\r\nWhether complex or simple, websites require that you make decisions — such as color, theme, and tone — and that you juggle many pieces of the project — like code, style sheets, and graphics. Knowing which resources to turn to for help implementing HTML5, and a few key points about incorporating graphics and video, can help you.","blurb":"","authors":[{"authorId":9574,"name":"David Karlins","slug":"david-karlins","description":" <p>David Karlins is a web design professional and author who's written over 50 books and created video training on top web design tools. Doug Sahlin is the coauthor of <i>Social Media Marketing All-in-One For Dummies</i> and author of <i>Digital Landscape &amp; Nature Photography For Dummies</i>.</p>","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9574"}},{"authorId":9229,"name":"Doug Sahlin","slug":"doug-sahlin","description":" <p><b>Joe Hutsko</b> has been writing about computers, gadgets, and video games for over 20 years. <b>Barbara Boyd</b> is coauthor with Joe of three editions of <i>iPhone All&#45;in&#45;One For Dummies</i>. <b>Jesse Feiler</b> writes apps and books about building and using apps. <b>Doug Sahlin</b> is the author of more than 20 how&#45;to books, many of them bestsellers. ","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9229"}}],"primaryCategoryTaxonomy":{"categoryId":33610,"title":"General Programming & Web Design","slug":"general-programming-web-design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33610"}},"secondaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"tertiaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"trendingArticles":null,"inThisArticle":[],"relatedArticles":{"fromBook":[],"fromCategory":[{"articleId":299575,"title":"HTML, CSS, & JavaScript All-in-One For Dummies Cheat Sheet","slug":"html-css-javascript-all-in-one-for-dummies-cheat-sheet","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/299575"}},{"articleId":265680,"title":"Using DevOps To Improve Engineering","slug":"tips-for-improving-engineering-performance-with-devops","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265680"}},{"articleId":265675,"title":"How To Automate DevOps in the Cloud","slug":"make-more-of-your-cloud-tools-automating-devops-in-the-cloud","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265675"}},{"articleId":265672,"title":"How To Choose a Cloud Service Provider for DevOps","slug":"choosing-the-best-cloud-service-provider-features-and-tools-for-devops","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265672"}},{"articleId":265664,"title":"How to Form DevOps Teams in Your Organization","slug":"how-to-form-devops-teams-in-your-organization","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265664"}}]},"hasRelatedBookFromSearch":false,"relatedBook":{"bookId":292544,"slug":"building-websites-all-in-one-for-dummies","isbn":"9781118270035","categoryList":["technology","programming-web-design","general-programming-web-design"],"amazon":{"default":"//www.amazon.com/gp/product/1118270037/ref=as_li_tl?ie=UTF8&tag=wiley01-20","ca":"//www.amazon.ca/gp/product/1118270037/ref=as_li_tl?ie=UTF8&tag=wiley01-20","indigo_ca":"//www.tkqlhce.com/click-9208661-13710633?url=//www.chapters.indigo.ca/en-ca/books/product/1118270037-item.html&cjsku=978111945484","gb":"//www.amazon.co.uk/gp/product/1118270037/ref=as_li_tl?ie=UTF8&tag=wiley01-20","de":"//www.amazon.de/gp/product/1118270037/ref=as_li_tl?ie=UTF8&tag=wiley01-20"},"image":{"src":"//coursofppt.com/wp-content/uploads/building-websites-all-in-one-for-dummies-book-cover-9781118270035-202x255.jpg","width":202,"height":255},"title":"Building Websites All-in-One For Dummies","testBankPinActivationLink":"","bookOutOfPrint":false,"authorsInfo":"<p>David Karlins is a web design professional and author who's written over 50 books and created video training on top web design tools. Doug Sahlin is the coauthor of <i>Social Media Marketing All-in-One For Dummies</i> and author of <i>Digital Landscape &amp; Nature Photography For Dummies</i>.</p>","authors":[{"authorId":9574,"name":"David Karlins","slug":"david-karlins","description":" <p>David Karlins is a web design professional and author who's written over 50 books and created video training on top web design tools. Doug Sahlin is the coauthor of <i>Social Media Marketing All-in-One For Dummies</i> and author of <i>Digital Landscape &amp; Nature Photography For Dummies</i>.</p>","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9574"}},{"authorId":9229,"name":"Doug Sahlin","slug":"doug-sahlin","description":" <p><b>Joe Hutsko</b> has been writing about computers, gadgets, and video games for over 20 years. <b>Barbara Boyd</b> is coauthor with Joe of three editions of <i>iPhone All&#45;in&#45;One For Dummies</i>. <b>Jesse Feiler</b> writes apps and books about building and using apps. <b>Doug Sahlin</b> is the author of more than 20 how&#45;to books, many of them bestsellers. ","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9229"}}],"_links":{"self":"//dummies-api.coursofppt.com/v2/books/"}},"collections":[],"articleAds":{"footerAd":"<div class=\"du-ad-region row\" id=\"article_page_adhesion_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_adhesion_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;general-programming-web-design&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781118270035&quot;]}]\" id=\"du-slot-65523a3778476\"></div></div>","rightAd":"<div class=\"du-ad-region row\" id=\"article_page_right_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_right_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;general-programming-web-design&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781118270035&quot;]}]\" id=\"du-slot-65523a377a165\"></div></div>"},"articleType":{"articleType":"Cheat Sheet","articleList":[{"articleId":174684,"title":"Online Resources for Building Websites","slug":"online-resources-for-building-websites","categoryList":[],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/174684"}},{"articleId":174683,"title":"Reminders for Preparing Web Graphics and Video","slug":"reminders-for-preparing-web-graphics-and-video","categoryList":[],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/174683"}}],"content":[{"title":"Online Resources for Building Websites","thumb":null,"image":null,"content":"<p>Amidst all the clutter on the web lie valuable free online resources for building essential elements of an inviting and accessible website. So that you don’t have to sift through the clutter, here are some of the best.</p>\n<p><a href=\"//www.w3schools.com/\">W3schools.com</a> provides the most extensive online library of code resources, but that library can be overwhelming. The following links take you to some useful landing points to get started:</p>\n<ul class=\"level-one\">\n<li>\n<p class=\"first-para\">Instructions on <a href=\"//www.w3schools.com/html/\">creating a basic HTML page</a></p>\n</li>\n<li>\n<p class=\"first-para\">Tutorials on building <a href=\"//www.w3schools.com/html/html_css.asp\">inline, internal, and external CSS</a></p>\n</li>\n<li>\n<p class=\"first-para\">Basic <a href=\"//www.w3schools.com/css/css_howto.asp\">CSS parameters, syntax, and instructions</a> for adding CSS to web pages</p>\n</li>\n</ul>\n"},{"title":"Reminders for Preparing Web Graphics and Video","thumb":null,"image":null,"content":"<p>Websites without graphics are almost non-existent these days. When you create graphics, optimize images, or prepare video for a website, the results have to be sharp, detailed, and fast loading. Three popular forms of graphics you use on a website are photo-realistic images, images such as logos with large areas of solid color, and images that are a combination of images and text. Here are some friendly reminders for creating and optimizing graphics for websites:</p>\n<ul class=\"level-one\">\n<li>\n<p class=\"first-para\"><b></b>Optimize photo-realistic images using the JPEG format.</p>\n</li>\n<li>\n<p class=\"first-para\"><b></b>Optimize images with large areas of solid color using the GIF format.</p>\n</li>\n<li>\n<p class=\"first-para\"><b></b>When optimizing graphics that have text overlaid on a photorealistic image, create separate slices for the areas of the image that are photorealistic, and create additional slices for the areas of the image that contain text. Export the areas containing text using the GIF format, and export the photo-realistic areas of the image using the JPEG format.</p>\n</li>\n<li>\n<p class=\"first-para\"><b></b>For high quality JPEG images, use a quality setting of 70 when exporting. For smaller JPEG images, you can get by with a quality setting of 50.</p>\n</li>\n<li>\n<p class=\"first-para\"><b></b>If you’re creating a photo gallery for a product, or for a photographer, export the images in the JPEG format with a quality setting of 80.</p>\n</li>\n<li>\n<p class=\"first-para\"><b></b>When compressing images using the JPEG format, pay careful attention to the edges of objects in the image. When you begin to see pixels, or the edges lack definition, you’ve compressed the image too far.</p>\n</li>\n<li>\n<p class=\"first-para\"><b></b>When exporting images using the GIF file format, use the least number of colors that yields a crisp image and you’ll have a fast loading image.</p>\n</li>\n<li>\n<p class=\"first-para\"><b></b>When you resample images for websites, the maximum resolution you need is 72 pixels per inch.</p>\n</li>\n</ul>\n<p>Websites with no video are becoming rarer. Video is everywhere on the Internet: for entertainment, in ads, to promote rock stars and other artists. When video is well done, it’s a thing of beauty. However there are some things you need to consider when adding video to a web page:</p>\n<ul class=\"level-one\">\n<li>\n<p class=\"first-para\"><b>Video takes up lots of bandwith. </b>If the bandwidth for a website is exceeded, the charge can be rather costly. Instead of hosting video on a website, upload it to YouTube, and then embed the video in a webpage or blog.</p>\n</li>\n<li>\n<p class=\"first-para\"><b>Don’t violate copyright laws. </b>Don’t copy video from other websites, or other people’s YouTube videos and use them on your website.</p>\n</li>\n<li>\n<p class=\"first-para\"><b>Check the license: </b>If you do use a video from a supplier or manufacturer on a commercial website, make sure you are covered by the supplier or manufacturer’s license.</p>\n</li>\n<li>\n<p class=\"first-para\"><b>Use a high quality camcorder to record video: </b>No, an iPhone is not a high quality camcorder. If you encode poor quality video for the web, you get poor quality video. Remember the old axiom: Garbage in, garbage out.</p>\n</li>\n<li>\n<p class=\"first-para\"><b>Make sure the website viewers have the necessary plug-ins to view the video. </b></p>\n</li>\n<li>\n<p class=\"first-para\"><b>If you create HTML5 pages with video, make sure the intended audience for the site uses HTML5-compliant browsers.</b></p>\n</li>\n<li>\n<p class=\"first-para\"><b>Don’t use transitions when you edit multiple video clips to create a video for the web.</b> Video transitions look great on HD video, but don’t look good when you encode a video for the web.</p>\n</li>\n</ul>\n"}],"videoInfo":{"videoId":null,"name":null,"accountId":null,"playerId":null,"thumbnailUrl":null,"description":null,"uploadDate":null}},"sponsorship":{"sponsorshipPage":false,"backgroundImage":{"src":null,"width":0,"height":0},"brandingLine":"","brandingLink":"","brandingLogo":{"src":null,"width":0,"height":0},"sponsorAd":"","sponsorEbookTitle":"","sponsorEbookLink":"","sponsorEbookImage":{"src":null,"width":0,"height":0}},"primaryLearningPath":"Advance","lifeExpectancy":"Six months","lifeExpectancySetFrom":"2024-11-08T00:00:00+00:00","dummiesForKids":"no","sponsoredContent":"no","adInfo":"","adPairKey":[]},"status":"publish","visibility":"public","articleId":208262},{"headers":{"creationTime":"2017-03-26T07:30:05+00:00","modifiedTime":"2024-10-04T12:49:14+00:00","timestamp":"2024-10-04T15:01:02+00:00"},"data":{"breadcrumbs":[{"name":"Technology","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33512"},"slug":"technology","categoryId":33512},{"name":"Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33592"},"slug":"programming-web-design","categoryId":33592},{"name":"Python","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33606"},"slug":"python","categoryId":33606}],"title":"Python 2.7 Keyword Subset and Examples","strippedTitle":"python 2.7 keyword subset and examples","slug":"python-2-7-keyword-subset-and-examples","canonicalUrl":"","收指数擎整合调整":{"metaDescription":"Programming is an important skill. Python will serve you well for years to come. The tables here give you the core words, built-ins, standard library functions,","noIndex":0,"noFollow":0},"content":"<p>Programming is an important skill. Python will serve you well for years to come. The tables here give you the core words, built-ins, standard library functions, and operators that you'll use most when you're coding with Python.</p>\r\n<h2 id=\"tab1\" >Python Core Words</h2>\r\n<table>\r\n<tbody>\r\n<tr>\r\n<th>Keyword</th><th>Summary</th><th>Example</th>\r\n</tr>\r\n<tr>\r\n<td>and</td>\r\n<td>Logical operator to test whether two things are both <span class=\"code\">True</span>.</td>\r\n<td><span class=\"code\"><em><conditional expression> </em><span style=\"font-family: Verdana;\">and</span></span><br /><span class=\"code\"><em><conditional expression></em></span><br /><span class=\"code\">x>2 and x<10</span></td>\r\n</tr>\r\n<tr>\r\n<td>as</td>\r\n<td>Assign a file object to a variable. Used with <span class=\"code\">with</span>.<br />Let your code refer to a module under a different name (also called an <em>alias</em>). Used with <span class=\"code\">import</span>.</td>\r\n<td><span class=\"code\">with open(<</span><span class=\"code\"><em>name of file</em></span><span class=\"code\">>,<</span><span class=\"code\"><em>file mode</em></span><span class=\"code\">>) as <</span><span class=\"code\"><em>object name</em></span><span class=\"code\">>:</span><span class=\"code\"><br /></span><span class=\"code\">import cPickle as pickle</span></td>\r\n</tr>\r\n<tr>\r\n<td>break</td>\r\n<td>Stop execution of a loop.</td>\r\n<td><span class=\"code\">for i in range(10):</span><br /><span class=\"code\"> if i%2 ==0:</span><br /><span class=\"code\"> break</span></td>\r\n</tr>\r\n<tr>\r\n<td>class</td>\r\n<td>Define a custom object.</td>\r\n<td><span class=\"code\">class <</span><span class=\"code\"><em>name of class</em></span><span class=\"code\">>(object):</span><span class=\"code\"><br /></span><span class=\"code\"> \"\"<em>Your docstring</em>\"\"</span> <br /><span class=\"code\">class MyClass(object):</span><span class=\"code\"><br /></span><span class=\"code\"> \"\"A cool function.\"\"</span><br /></td>\r\n</tr>\r\n<tr>\r\n<td>continue</td>\r\n<td>Skip balance of loop and begin a new iteration.</td>\r\n<td><span class=\"code\">for i in range(10):</span><br /><span class=\"code\"> if i%2 ==0:</span><br /><span class=\"code\"> continue</span></td>\r\n</tr>\r\n<tr>\r\n<td>def</td>\r\n<td>Define a function.</td>\r\n<td><span class=\"code\">def <</span><span class=\"code\"><em>name of function</em></span><span class=\"code\">>(<argument list>):</span><span class=\"code\"><br /></span><span class=\"code\"> \"\"<em>Your docstring</em>\"\"</span> <span class=\"code\"><br /></span><span class=\"code\">def my_function():</span><span class=\"code\"><br /></span><span class=\"code\"> \"\"This does... \"\"</span></td>\r\n</tr>\r\n<tr>\r\n<td>elif</td>\r\n<td>Add conditional test to an <span class=\"code\">if</span> clause.</td>\r\n<td>See <span class=\"code\">if</span>.</td>\r\n</tr>\r\n<tr>\r\n<td>else</td>\r\n<td>Add an alternative code block.</td>\r\n<td>See <span class=\"code\">if</span>.</td>\r\n</tr>\r\n<tr>\r\n<td>for</td>\r\n<td>Create a loop which iterates through elements of a list (or other iterable).</td>\r\n<td><span class=\"code\">for <</span><span class=\"code\"><em>dummy variable name</em></span><span class=\"code\">> in <</span><span class=\"code\"><em>sequence</em></span><span class=\"code\">>:</span><span class=\"code\"><br /></span><span class=\"code\">for i in range(10):</span></td>\r\n</tr>\r\n<tr>\r\n<td>from</td>\r\n<td>Import specific functions from a module without importing the whole module.</td>\r\n<td><span class=\"code\">from <</span><span class=\"code\"><em>module name</em></span><span class=\"code\">> import <</span><span class=\"code\"><em>name of function or object</em></span><span class=\"code\">></span><span class=\"code\"><br /></span><span class=\"code\">from random import randint</span></td>\r\n</tr>\r\n<tr>\r\n<td>global</td>\r\n<td>Make a variable global in scope. (If a variable is defined in the main section, you can change its value within a function.)</td>\r\n<td><span class=\"code\">global x</span></td>\r\n</tr>\r\n<tr>\r\n<td>if</td>\r\n<td>Create a condition. If the condition is <span class=\"code\">True</span>, the associated code block is executed. Otherwise, any <span class=\"code\">elif</span> commands are processed. If there are none, or none are satisfied, execute the <span class=\"code\">else</span> block if there is one.</td>\r\n<td><span class=\"code\">if <em><conditional expression></em>:</span><br /><span class=\"code\"><em> <code block></em></span><br /><span class=\"code\">[elif <conditional expression>:</span><br /><span class=\"code\"> <code block>, ...]</span><br /><span class=\"code\">[else:</span><br /><span class=\"code\"> <code block>]</span><br /><span class=\"code\">if x == 1:</span><br /><span class=\"code\"> print(\"x is 1\")</span><br /><span class=\"code\">elif x == 2:</span><br /><span class=\"code\"> print(\"x is 2\")</span><br /><span class=\"code\">elif x > 3:</span><br /><span class=\"code\"> print(\"x is greater than 3\")</span><br /><span class=\"code\">else</span><br /><span class=\"code\"> print(\"x is not greater than 3, nor is it 1 one or 2\")</span></td>\r\n</tr>\r\n<tr>\r\n<td>import</td>\r\n<td>Use code defined in another file without retyping it.</td>\r\n<td><span class=\"code\">import <</span><span class=\"code\"><em>name of module</em></span><span class=\"code\">></span><span class=\"code\"><br /></span><span class=\"code\">import random</span></td>\r\n</tr>\r\n<tr>\r\n<td>in</td>\r\n<td>Used to test whether a given value is one of the elements of an object.</td>\r\n<td><span class=\"code\">1 in range(10)</span></td>\r\n</tr>\r\n<tr>\r\n<td>is</td>\r\n<td>Used to test whether names reference the same object.</td>\r\n<td><span class=\"code\">x = None</span><br /><span class=\"code\">x is None # faster than</span><br /><span class=\"code\">x == None</span></td>\r\n</tr>\r\n<tr>\r\n<td>lambda</td>\r\n<td>Shorthand function definition. Usually used where a function needs to be passed as an argument to another function.</td>\r\n<td><span class=\"code\">lamda <em><dummy variables></em>:</span><br /><span class=\"code\"><em><expression using dummy variables></em></span><br /><span class=\"code\">times = lambda x, y: x*y</span><br /><span class=\"code\">command=lambda x: self.draw_line(self.control_points)</span></td>\r\n</tr>\r\n<tr>\r\n<td>not</td>\r\n<td>Logical negation, used to negate a logical condition. Don't use for testing greater than, less than, or equal.</td>\r\n<td><span class=\"code\">10 not in range(10)</span></td>\r\n</tr>\r\n<tr>\r\n<td>or</td>\r\n<td>Logical operator to test whether at least one of two things is <span class=\"code\">True</span>.</td>\r\n<td><span class=\"code\"><em><conditional expression></em> <span style=\"font-family: Verdana;\">or</span></span><br /><span class=\"code\"><em><conditional expression></em></span><br /><span class=\"code\">x<2 or x>10</span></td>\r\n</tr>\r\n<tr>\r\n<td>pass</td>\r\n<td>Placeholder keyword. Does nothing but stop Python complaining that a code block is empty.</td>\r\n<td><span class=\"code\">for i in range (10):</span><span class=\"code\"><br /></span><span class=\"code\"> pass</span></td>\r\n</tr>\r\n<tr>\r\n<td>print</td>\r\n<td>Output text to a terminal.</td>\r\n<td><span class=\"code\">print(</span><span class=\"code\">\"</span><span class=\"code\">Hello World!</span><span class=\"code\">\"</span><span class=\"code\">)</span></td>\r\n</tr>\r\n<tr>\r\n<td>return</td>\r\n<td>Return from the execution of a function. If a value is specified, return that value, otherwise return <span class=\"code\">None</span>.</td>\r\n<td><span class=\"code\">return <value or expression></span><span class=\"code\"><br /></span><span class=\"code\">return x+2</span></td>\r\n</tr>\r\n<tr>\r\n<td>while</td>\r\n<td>Execute a code block while the associated condition is <span class=\"code\">True</span>.</td>\r\n<td><span class=\"code\">while <conditional expression>:</span><br /><span class=\"code\">while True:</span><br /><span class=\"code\"> pass</span></td>\r\n</tr>\r\n<tr>\r\n<td>with</td>\r\n<td>Get Python to manage a resource (like a file) for you.</td>\r\n<td><span class=\"code\">with open(<name of file>,<file mode>) as <object name>:</span></td>\r\n</tr>\r\n</tbody>\r\n</table>\r\n<p>Extend Python's core functionality with these built-ins.</p>\r\n<table border=\"0\">\r\n<caption>Python Built-ins </caption>\r\n<tbody>\r\n<tr>\r\n<th>Built-in</th><th>Notes</th><th>Example</th>\r\n</tr>\r\n<tr>\r\n<td>False</td>\r\n<td>Value, returned by a logical operation or directly assigned.</td>\r\n<td><span class=\"code\">ok_to_continue = False</span><br /><span class=\"code\">age = 16</span><br /><span class=\"code\">old_enough = age >=21</span><br />(evaluates comparison <span class=\"code\">age>=21</span> <br />and assigns the result to <span class=\"code\">old_enough)</span></td>\r\n</tr>\r\n<tr>\r\n<td>None</td>\r\n<td>Value used when representing the absence of a value or to initialise a variable which will be changed later. Returned by functions which do not explicitly return a value.</td>\r\n<td><span class=\"code\">x = None</span></td>\r\n</tr>\r\n<tr>\r\n<td>True</td>\r\n<td>Value, returned by a logical operation.</td>\r\n<td><span class=\"code\">ok_to_continue = True</span><br /><span class=\"code\">age = 16</span><br /><span class=\"code\">old_enough = age >=21</span><br />(evaluates comparison <span class=\"code\">age>=21</span> <br />and assigns the result to <span class=\"code\">old_enough)</span></td>\r\n</tr>\r\n<tr>\r\n<td>__name__</td>\r\n<td>Constant, shows module name. If it's not <span class=\"code\">\"</span><span class=\"code\">__</span><span class=\"code\">main</span><span class=\"code\">__</span><span class=\"code\">\"</span>, the code is being used in an import.</td>\r\n<td><span class=\"code\">if __name__==</span><span class=\"code\">\"</span><span class=\"code\">__main__</span><span class=\"code\">\"</span><span class=\"code\">:</span></td>\r\n</tr>\r\n<tr>\r\n<td>dir</td>\r\n<td>List attributes of an item.</td>\r\n<td><span class=\"code\">dir(<</span><span class=\"code\"><em>object name</em></span><span class=\"code\">>)</span></td>\r\n</tr>\r\n<tr>\r\n<td>enumerate</td>\r\n<td>Iterate through a sequence and number each item.</td>\r\n<td><span class=\"code\">enumerate(</span><span class=\"code\">'</span><span class=\"code\">Hello</span><span class=\"code\">'</span><span class=\"code\">)</span></td>\r\n</tr>\r\n<tr>\r\n<td>exit</td>\r\n<td>Exit Python (Command Line) interpreter.</td>\r\n<td><span class=\"code\">exit()</span></td>\r\n</tr>\r\n<tr>\r\n<td>float</td>\r\n<td>Convert a number into a decimal, usually so that division works properly.</td>\r\n<td><span class=\"code\">1/float(2)</span></td>\r\n</tr>\r\n<tr>\r\n<td>getattr</td>\r\n<td>Get an attribute of an object by a name. Useful for introspection.</td>\r\n<td><span class=\"code\">getattr(<</span><span class=\"code\"><em>name of object</em></span><span class=\"code\">>, <</span><span class=\"code\"><em>name of attribute</em></span><span class=\"code\">>)</span></td>\r\n</tr>\r\n<tr>\r\n<td>help</td>\r\n<td>Get Python docstring on object.</td>\r\n<td><span class=\"code\">help(<</span><span class=\"code\"><em>name of object</em></span><span class=\"code\">>)</span><span class=\"code\"><br /></span><span class=\"code\">help(getattr)</span></td>\r\n</tr>\r\n<tr>\r\n<td>id</td>\r\n<td>Show the location in the computer's RAM where an object is stored.</td>\r\n<td><span class=\"code\">id(<</span><span class=\"code\"><em>name of object</em></span><span class=\"code\">>)</span><span class=\"code\"><br /></span><span class=\"code\">id(help)</span></td>\r\n</tr>\r\n<tr>\r\n<td>int</td>\r\n<td>Convert a string into an integer number.</td>\r\n<td><span class=\"code\">int(</span><span class=\"code\">'</span><span class=\"code\">0</span><span class=\"code\">'</span><span class=\"code\">)</span></td>\r\n</tr>\r\n<tr>\r\n<td>len</td>\r\n<td>Get the number of elements in a sequence.</td>\r\n<td><span class=\"code\">len([0,1])</span></td>\r\n</tr>\r\n<tr>\r\n<td>object</td>\r\n<td>A base on which other classes can inherit from.</td>\r\n<td><span class=\"code\">class CustomObject(object):</span></td>\r\n</tr>\r\n<tr>\r\n<td>open</td>\r\n<td>Open a file on disk, return a file object.</td>\r\n<td><span class=\"code\">open(<path to file>, <mode>)</span><br /><span class=\"code\">open('mydatafile.txt', 'r') # read</span><br />(opens a file to read data from)<br /><span class=\"code\">open('mydatafile.txt', 'w') # write</span><br />(creates a new file to write to, destroys any existing file with the same name)<br /><span class=\"code\">open('mydatafile.txt', 'a') # append</span><br />(adds to an existing file if any, or creates<br />a new one if none existing already)</td>\r\n</tr>\r\n<tr>\r\n<td>print</td>\r\n<td>Reimplementation of <span class=\"code\">print</span> keyword, but as a function.<br />Need to import from the future to use it (srsly!)<br /></td>\r\n<td><span class=\"code\">from future import print_function</span><br /><span class=\"code\">print ('Hello World!</span><span class=\"code\">'</span><span class=\"code\">)</span></td>\r\n</tr>\r\n<tr>\r\n<td>range</td>\r\n<td>Gives numbers between the lower and upper limits specified (including the lower, but excluding the upper limit). A step may be specified.</td>\r\n<td><span class=\"code\">range(10)</span><span class=\"code\"><br /></span><span class=\"code\">range(5,10)</span><span class=\"code\"><br /></span><span class=\"code\">range(1,10,2)</span></td>\r\n</tr>\r\n<tr>\r\n<td>raw_input</td>\r\n<td>Get some text as a string from the user, with an optional prompt.</td>\r\n<td><span class=\"code\">prompt =</span> <span class=\"code\">'</span><span class=\"code\">What is your guess?</span> <span class=\"code\">'</span><span class=\"code\"><br />players_guess = raw_input(prompt)</span></td>\r\n</tr>\r\n<tr>\r\n<td>str</td>\r\n<td>Convert an object (usually a number) into a string (usually for printing).</td>\r\n<td><span class=\"code\">str(0)</span></td>\r\n</tr>\r\n<tr>\r\n<td>type</td>\r\n<td>Give the type of the specified object.</td>\r\n<td><span class=\"code\">type(0)<br />type(</span><span class=\"code\">'</span><span class=\"code\">0</span><span class=\"code\">'</span><span class=\"code\">)<br />type([])<br />type({})<br />type(())</span></td>\r\n</tr>\r\n</tbody>\r\n</table>\r\n<p>Use the work that others have already done. Try these modules from the Python standard library.</p>\r\n<table border=\"0\">\r\n<caption>Selected Functions from the Standard Library </caption>\r\n<tbody>\r\n<tr>\r\n<th>Module</th><th>What It Does</th><th>Sample Functions/Objects</th>\r\n</tr>\r\n<tr>\r\n<td>os.path</td>\r\n<td>Functions relating to files and file paths.</td>\r\n<td><span class=\"code\">os.path.exists(<path to file>)</span></td>\r\n</tr>\r\n<tr>\r\n<td>pickle, cPickle</td>\r\n<td>Save and load objects to/from a file.</td>\r\n<td><span class=\"code\">pickle.load(<file object to load from>),</span> <span class=\"code\">pickle.dump(<object to dump>, <file object to save to>)</span></td>\r\n</tr>\r\n<tr>\r\n<td>random</td>\r\n<td>Various functions relating to random numbers.</td>\r\n<td><span class=\"code\">random.choice(<sequence to choose from>), random.randint(<lower limit>, <upper limit>), random.shuffle(<name of list to shuffle>)</span></td>\r\n</tr>\r\n<tr>\r\n<td>String</td>\r\n<td>Stuff relating to strings.</td>\r\n<td><span class=\"code\">string.printable</span></td>\r\n</tr>\r\n<tr>\r\n<td>sys</td>\r\n<td>Various functions related to your computer system.</td>\r\n<td><span class=\"code\">sys.exit()</span></td>\r\n</tr>\r\n<tr>\r\n<td>Time</td>\r\n<td>Time-related functions.</td>\r\n<td><span class=\"code\">time.time()</span></td>\r\n</tr>\r\n<tr>\r\n<td>Tkinter</td>\r\n<td>User interface widgets and associated constants.</td>\r\n<td><span class=\"code\">Tkinter.ALL</span><br /><span class=\"code\">Tkinter.BOTH</span><br /><span class=\"code\">Tkinter.CENTER</span><br /><span class=\"code\">Tkinter.END</span><br /><span class=\"code\">Tkinter.HORIZONTAL</span><br /><span class=\"code\">Tkinter.LEFT</span><br /><span class=\"code\">Tkinter.NW</span><br /><span class=\"code\">Tkinter.RIGHT</span><br /><span class=\"code\">Tkinter.TOP</span><br /><span class=\"code\">Tkinter.Y</span><br /><span class=\"code\">Tkinter.Button(<parent widget>,</span><br /><span class=\"code\">text=<button text>)</span><br /><span class=\"code\">Tkinter.Canvas(<parent widget>,</span><br /><span class=\"code\"> width=<width>, height=<height>)</span><br /><span class=\"code\">Tkinter.Checkbutton(<parent widget>,</span><br /><span class=\"code\"> text=<checkbutton text>)</span><br /><span class=\"code\">Tkinter.Entry(<parent widget>,</span><br /><span class=\"code\"> width=<number of characters wide>),</span><br /><span class=\"code\">Tkinter.Frame(<parent widget>)</span><br /><span class=\"code\">Tkinter.IntVar()</span><br /><span class=\"code\">Tkinter.Label(<parent widget>,</span><br /><span class=\"code\"> text = <label text>)</span><br /><span class=\"code\">Tkinter.mainloop()</span><br /><span class=\"code\">Tkinter.Menu(<parent widget>)</span><br /><span class=\"code\">Tkinter.OptionMenu(<parent widget>,</span><br /><span class=\"code\"> None, None)</span><br /><span class=\"code\">Tkinter.Scale(<parent widget>,</span><br /><span class=\"code\"> from_=<lower limit>,</span><br /><span class=\"code\"> to=<upper limit>)</span><br /><span class=\"code\">Tkinter.Scrollbar(<parent widget>)</span><br /><span class=\"code\">Tkinter.StringVar()</span><br /><span class=\"code\">Tkinter.Tk()</span><br /></td>\r\n</tr>\r\n</tbody>\r\n</table>\r\n<p>Add, subtract, divide, multiply, and more using these operators.</p>\r\n<table border=\"0\">\r\n<caption>Python Operators </caption>\r\n<tbody>\r\n<tr>\r\n<th>Operator</th><th>Name</th><th>Effect</th><th>Examples</th>\r\n</tr>\r\n<tr>\r\n<td>+</td>\r\n<td>Plus</td>\r\n<td>Add two numbers.<br />Join two strings together.</td>\r\n<td>Add: <span class=\"code\">>>> 1+1</span><span class=\"code\"><br /></span><span class=\"code\">2</span><span class=\"code\"><br /></span>Join: <span class=\"code\">>>></span> <span class=\"code\">'</span><span class=\"code\">a</span><span class=\"code\">'</span><span class=\"code\">+</span><span class=\"code\">'</span><span class=\"code\">b</span><span class=\"code\">'</span><span class=\"code\"><br /></span><span class=\"code\">'</span><span class=\"code\">ab</span><span class=\"code\">'</span></td>\r\n</tr>\r\n<tr>\r\n<td>–</td>\r\n<td>Minus</td>\r\n<td>Subtract a number from another.<br />Can't use for strings.</td>\r\n<td><span class=\"code\">>>> 1-1</span><span class=\"code\"><br /></span><span class=\"code\">0</span></td>\r\n</tr>\r\n<tr>\r\n<td>*</td>\r\n<td>Times</td>\r\n<td>Multiply two numbers.<br />Make copies of a string.</td>\r\n<td>Multiply: <span class=\"code\">>>> 2*2</span><span class=\"code\"><br /></span><span class=\"code\">4</span><span class=\"code\"><br /></span>Copy: <span class=\"code\">>>></span> <span class=\"code\">'</span><span class=\"code\">a</span><span class=\"code\">'</span><span class=\"code\">*2</span><span class=\"code\"><br /></span><span class=\"code\">'</span><span class=\"code\">aa</span><span class=\"code\">'</span></td>\r\n</tr>\r\n<tr>\r\n<td>/</td>\r\n<td>Divide</td>\r\n<td>Divide one number by another.<br />Can't use for strings.</td>\r\n<td>1/2 # integer division:<br />Answer will be rounded down.<br />1/2.0 # decimal division<br />1/float(2) # decimal division<br /></td>\r\n</tr>\r\n<tr>\r\n<td>%</td>\r\n<td>Remainder (Modulo)</td>\r\n<td>Give the remainder when dividing the left number by the right number.<br />Formatting operator for strings.</td>\r\n<td><span class=\"code\">>>> 10%3</span><br /><span class=\"code\">1</span></td>\r\n</tr>\r\n<tr>\r\n<td>**</td>\r\n<td>Power</td>\r\n<td><span class=\"code\">x**y</span> means raise <span class=\"code\">x</span> to the power of <span class=\"code\">y</span>.<br />Can't use for strings.</td>\r\n<td><span class=\"code\">>>> 3**2</span><span class=\"code\"><br /></span><span class=\"code\">9</span></td>\r\n</tr>\r\n<tr>\r\n<td>=</td>\r\n<td>Assignment</td>\r\n<td>Assign the value on the right to the variable on the left.</td>\r\n<td><span class=\"code\">>>> a = 1</span></td>\r\n</tr>\r\n<tr>\r\n<td>==</td>\r\n<td>Equality</td>\r\n<td>Is the left side equal to the right side? Is <span class=\"code\">True</span> if so; is <span class=\"code\">False</span> otherwise.</td>\r\n<td><span class=\"code\">>>> 1 == 1</span><br /><span class=\"code\">True</span><br /><span class=\"code\">>>> 'a' == 'a'</span><br /><span class=\"code\">True</span></td>\r\n</tr>\r\n<tr>\r\n<td>!=</td>\r\n<td>Not equal</td>\r\n<td>Is the left side <em>not</em> equal to the right side? Is <span class=\"code\">True</span> if so; is False otherwise.</td>\r\n<td><span class=\"code\">>>> 1 != 1</span><br /><span class=\"code\">False</span><br /><span class=\"code\">>>> 1 != 2</span><br /><span class=\"code\">True</span><br /><span class=\"code\">>>> 'a' != 'a'</span><br /><span class=\"code\">True</span></td>\r\n</tr>\r\n<tr>\r\n<td>></td>\r\n<td>Greater than</td>\r\n<td>Is the left side greater than the right side?<br /><span class=\"code\">>=</span> means greater than or equal to</td>\r\n<td><span class=\"code\">>>> 2 > 1</span><span class=\"code\"><br /></span><span class=\"code\">True</span></td>\r\n</tr>\r\n<tr>\r\n<td><</td>\r\n<td>Less than</td>\r\n<td>Is the left side less than the right side?<br /><span class=\"code\"><=</span> means less than or equal to</td>\r\n<td><span class=\"code\">>>> 1 < 2</span><span class=\"code\"><br /></span><span class=\"code\">True</span></td>\r\n</tr>\r\n<tr>\r\n<td>& (or and)</td>\r\n<td>And</td>\r\n<td>Are both left and right <span class=\"code\">True</span>?<br />Typically used for complex conditions where you want to do something if everything is <span class=\"code\">True</span>:<br /><span class=\"code\">while im_hungry and you_have_food:</span></td>\r\n<td><span class=\"code\">>>> True & True</span><br /><span class=\"code\">True</span><br /><span class=\"code\">>>> True and False</span><br /><span class=\"code\">False </span><br /><span class=\"code\">>>> True & (1 == 2)</span><br /><span class=\"code\">False</span></td>\r\n</tr>\r\n<tr>\r\n<td>| (or or)</td>\r\n<td>Or</td>\r\n<td>Is either left or right <span class=\"code\">True</span>?<br />Typically used for complex conditions where you want at least one thing to be <span class=\"code\">True</span>:<br /><span class=\"code\">while im_bored or youre_bored:</span></td>\r\n<td><span class=\"code\">>>> True | False</span><br /><span class=\"code\">True</span><br /><span class=\"code\">>>> True or False</span><br /><span class=\"code\">True</span><br /><span class=\"code\">>>> False | False</span><br /><span class=\"code\">False</span><br /><span class=\"code\">>>> (1 == 1) | False</span><br /><span class=\"code\">True</span></td>\r\n</tr>\r\n</tbody>\r\n</table>","description":"<p>Programming is an important skill. Python will serve you well for years to come. The tables here give you the core words, built-ins, standard library functions, and operators that you'll use most when you're coding with Python.</p>\r\n<h2 id=\"tab1\" >Python Core Words</h2>\r\n<table>\r\n<tbody>\r\n<tr>\r\n<th>Keyword</th><th>Summary</th><th>Example</th>\r\n</tr>\r\n<tr>\r\n<td>and</td>\r\n<td>Logical operator to test whether two things are both <span class=\"code\">True</span>.</td>\r\n<td><span class=\"code\"><em><conditional expression> </em><span style=\"font-family: Verdana;\">and</span></span><br /><span class=\"code\"><em><conditional expression></em></span><br /><span class=\"code\">x>2 and x<10</span></td>\r\n</tr>\r\n<tr>\r\n<td>as</td>\r\n<td>Assign a file object to a variable. Used with <span class=\"code\">with</span>.<br />Let your code refer to a module under a different name (also called an <em>alias</em>). Used with <span class=\"code\">import</span>.</td>\r\n<td><span class=\"code\">with open(<</span><span class=\"code\"><em>name of file</em></span><span class=\"code\">>,<</span><span class=\"code\"><em>file mode</em></span><span class=\"code\">>) as <</span><span class=\"code\"><em>object name</em></span><span class=\"code\">>:</span><span class=\"code\"><br /></span><span class=\"code\">import cPickle as pickle</span></td>\r\n</tr>\r\n<tr>\r\n<td>break</td>\r\n<td>Stop execution of a loop.</td>\r\n<td><span class=\"code\">for i in range(10):</span><br /><span class=\"code\"> if i%2 ==0:</span><br /><span class=\"code\"> break</span></td>\r\n</tr>\r\n<tr>\r\n<td>class</td>\r\n<td>Define a custom object.</td>\r\n<td><span class=\"code\">class <</span><span class=\"code\"><em>name of class</em></span><span class=\"code\">>(object):</span><span class=\"code\"><br /></span><span class=\"code\"> \"\"<em>Your docstring</em>\"\"</span> <br /><span class=\"code\">class MyClass(object):</span><span class=\"code\"><br /></span><span class=\"code\"> \"\"A cool function.\"\"</span><br /></td>\r\n</tr>\r\n<tr>\r\n<td>continue</td>\r\n<td>Skip balance of loop and begin a new iteration.</td>\r\n<td><span class=\"code\">for i in range(10):</span><br /><span class=\"code\"> if i%2 ==0:</span><br /><span class=\"code\"> continue</span></td>\r\n</tr>\r\n<tr>\r\n<td>def</td>\r\n<td>Define a function.</td>\r\n<td><span class=\"code\">def <</span><span class=\"code\"><em>name of function</em></span><span class=\"code\">>(<argument list>):</span><span class=\"code\"><br /></span><span class=\"code\"> \"\"<em>Your docstring</em>\"\"</span> <span class=\"code\"><br /></span><span class=\"code\">def my_function():</span><span class=\"code\"><br /></span><span class=\"code\"> \"\"This does... \"\"</span></td>\r\n</tr>\r\n<tr>\r\n<td>elif</td>\r\n<td>Add conditional test to an <span class=\"code\">if</span> clause.</td>\r\n<td>See <span class=\"code\">if</span>.</td>\r\n</tr>\r\n<tr>\r\n<td>else</td>\r\n<td>Add an alternative code block.</td>\r\n<td>See <span class=\"code\">if</span>.</td>\r\n</tr>\r\n<tr>\r\n<td>for</td>\r\n<td>Create a loop which iterates through elements of a list (or other iterable).</td>\r\n<td><span class=\"code\">for <</span><span class=\"code\"><em>dummy variable name</em></span><span class=\"code\">> in <</span><span class=\"code\"><em>sequence</em></span><span class=\"code\">>:</span><span class=\"code\"><br /></span><span class=\"code\">for i in range(10):</span></td>\r\n</tr>\r\n<tr>\r\n<td>from</td>\r\n<td>Import specific functions from a module without importing the whole module.</td>\r\n<td><span class=\"code\">from <</span><span class=\"code\"><em>module name</em></span><span class=\"code\">> import <</span><span class=\"code\"><em>name of function or object</em></span><span class=\"code\">></span><span class=\"code\"><br /></span><span class=\"code\">from random import randint</span></td>\r\n</tr>\r\n<tr>\r\n<td>global</td>\r\n<td>Make a variable global in scope. (If a variable is defined in the main section, you can change its value within a function.)</td>\r\n<td><span class=\"code\">global x</span></td>\r\n</tr>\r\n<tr>\r\n<td>if</td>\r\n<td>Create a condition. If the condition is <span class=\"code\">True</span>, the associated code block is executed. Otherwise, any <span class=\"code\">elif</span> commands are processed. If there are none, or none are satisfied, execute the <span class=\"code\">else</span> block if there is one.</td>\r\n<td><span class=\"code\">if <em><conditional expression></em>:</span><br /><span class=\"code\"><em> <code block></em></span><br /><span class=\"code\">[elif <conditional expression>:</span><br /><span class=\"code\"> <code block>, ...]</span><br /><span class=\"code\">[else:</span><br /><span class=\"code\"> <code block>]</span><br /><span class=\"code\">if x == 1:</span><br /><span class=\"code\"> print(\"x is 1\")</span><br /><span class=\"code\">elif x == 2:</span><br /><span class=\"code\"> print(\"x is 2\")</span><br /><span class=\"code\">elif x > 3:</span><br /><span class=\"code\"> print(\"x is greater than 3\")</span><br /><span class=\"code\">else</span><br /><span class=\"code\"> print(\"x is not greater than 3, nor is it 1 one or 2\")</span></td>\r\n</tr>\r\n<tr>\r\n<td>import</td>\r\n<td>Use code defined in another file without retyping it.</td>\r\n<td><span class=\"code\">import <</span><span class=\"code\"><em>name of module</em></span><span class=\"code\">></span><span class=\"code\"><br /></span><span class=\"code\">import random</span></td>\r\n</tr>\r\n<tr>\r\n<td>in</td>\r\n<td>Used to test whether a given value is one of the elements of an object.</td>\r\n<td><span class=\"code\">1 in range(10)</span></td>\r\n</tr>\r\n<tr>\r\n<td>is</td>\r\n<td>Used to test whether names reference the same object.</td>\r\n<td><span class=\"code\">x = None</span><br /><span class=\"code\">x is None # faster than</span><br /><span class=\"code\">x == None</span></td>\r\n</tr>\r\n<tr>\r\n<td>lambda</td>\r\n<td>Shorthand function definition. Usually used where a function needs to be passed as an argument to another function.</td>\r\n<td><span class=\"code\">lamda <em><dummy variables></em>:</span><br /><span class=\"code\"><em><expression using dummy variables></em></span><br /><span class=\"code\">times = lambda x, y: x*y</span><br /><span class=\"code\">command=lambda x: self.draw_line(self.control_points)</span></td>\r\n</tr>\r\n<tr>\r\n<td>not</td>\r\n<td>Logical negation, used to negate a logical condition. Don't use for testing greater than, less than, or equal.</td>\r\n<td><span class=\"code\">10 not in range(10)</span></td>\r\n</tr>\r\n<tr>\r\n<td>or</td>\r\n<td>Logical operator to test whether at least one of two things is <span class=\"code\">True</span>.</td>\r\n<td><span class=\"code\"><em><conditional expression></em> <span style=\"font-family: Verdana;\">or</span></span><br /><span class=\"code\"><em><conditional expression></em></span><br /><span class=\"code\">x<2 or x>10</span></td>\r\n</tr>\r\n<tr>\r\n<td>pass</td>\r\n<td>Placeholder keyword. Does nothing but stop Python complaining that a code block is empty.</td>\r\n<td><span class=\"code\">for i in range (10):</span><span class=\"code\"><br /></span><span class=\"code\"> pass</span></td>\r\n</tr>\r\n<tr>\r\n<td>print</td>\r\n<td>Output text to a terminal.</td>\r\n<td><span class=\"code\">print(</span><span class=\"code\">\"</span><span class=\"code\">Hello World!</span><span class=\"code\">\"</span><span class=\"code\">)</span></td>\r\n</tr>\r\n<tr>\r\n<td>return</td>\r\n<td>Return from the execution of a function. If a value is specified, return that value, otherwise return <span class=\"code\">None</span>.</td>\r\n<td><span class=\"code\">return <value or expression></span><span class=\"code\"><br /></span><span class=\"code\">return x+2</span></td>\r\n</tr>\r\n<tr>\r\n<td>while</td>\r\n<td>Execute a code block while the associated condition is <span class=\"code\">True</span>.</td>\r\n<td><span class=\"code\">while <conditional expression>:</span><br /><span class=\"code\">while True:</span><br /><span class=\"code\"> pass</span></td>\r\n</tr>\r\n<tr>\r\n<td>with</td>\r\n<td>Get Python to manage a resource (like a file) for you.</td>\r\n<td><span class=\"code\">with open(<name of file>,<file mode>) as <object name>:</span></td>\r\n</tr>\r\n</tbody>\r\n</table>\r\n<p>Extend Python's core functionality with these built-ins.</p>\r\n<table border=\"0\">\r\n<caption>Python Built-ins </caption>\r\n<tbody>\r\n<tr>\r\n<th>Built-in</th><th>Notes</th><th>Example</th>\r\n</tr>\r\n<tr>\r\n<td>False</td>\r\n<td>Value, returned by a logical operation or directly assigned.</td>\r\n<td><span class=\"code\">ok_to_continue = False</span><br /><span class=\"code\">age = 16</span><br /><span class=\"code\">old_enough = age >=21</span><br />(evaluates comparison <span class=\"code\">age>=21</span> <br />and assigns the result to <span class=\"code\">old_enough)</span></td>\r\n</tr>\r\n<tr>\r\n<td>None</td>\r\n<td>Value used when representing the absence of a value or to initialise a variable which will be changed later. Returned by functions which do not explicitly return a value.</td>\r\n<td><span class=\"code\">x = None</span></td>\r\n</tr>\r\n<tr>\r\n<td>True</td>\r\n<td>Value, returned by a logical operation.</td>\r\n<td><span class=\"code\">ok_to_continue = True</span><br /><span class=\"code\">age = 16</span><br /><span class=\"code\">old_enough = age >=21</span><br />(evaluates comparison <span class=\"code\">age>=21</span> <br />and assigns the result to <span class=\"code\">old_enough)</span></td>\r\n</tr>\r\n<tr>\r\n<td>__name__</td>\r\n<td>Constant, shows module name. If it's not <span class=\"code\">\"</span><span class=\"code\">__</span><span class=\"code\">main</span><span class=\"code\">__</span><span class=\"code\">\"</span>, the code is being used in an import.</td>\r\n<td><span class=\"code\">if __name__==</span><span class=\"code\">\"</span><span class=\"code\">__main__</span><span class=\"code\">\"</span><span class=\"code\">:</span></td>\r\n</tr>\r\n<tr>\r\n<td>dir</td>\r\n<td>List attributes of an item.</td>\r\n<td><span class=\"code\">dir(<</span><span class=\"code\"><em>object name</em></span><span class=\"code\">>)</span></td>\r\n</tr>\r\n<tr>\r\n<td>enumerate</td>\r\n<td>Iterate through a sequence and number each item.</td>\r\n<td><span class=\"code\">enumerate(</span><span class=\"code\">'</span><span class=\"code\">Hello</span><span class=\"code\">'</span><span class=\"code\">)</span></td>\r\n</tr>\r\n<tr>\r\n<td>exit</td>\r\n<td>Exit Python (Command Line) interpreter.</td>\r\n<td><span class=\"code\">exit()</span></td>\r\n</tr>\r\n<tr>\r\n<td>float</td>\r\n<td>Convert a number into a decimal, usually so that division works properly.</td>\r\n<td><span class=\"code\">1/float(2)</span></td>\r\n</tr>\r\n<tr>\r\n<td>getattr</td>\r\n<td>Get an attribute of an object by a name. Useful for introspection.</td>\r\n<td><span class=\"code\">getattr(<</span><span class=\"code\"><em>name of object</em></span><span class=\"code\">>, <</span><span class=\"code\"><em>name of attribute</em></span><span class=\"code\">>)</span></td>\r\n</tr>\r\n<tr>\r\n<td>help</td>\r\n<td>Get Python docstring on object.</td>\r\n<td><span class=\"code\">help(<</span><span class=\"code\"><em>name of object</em></span><span class=\"code\">>)</span><span class=\"code\"><br /></span><span class=\"code\">help(getattr)</span></td>\r\n</tr>\r\n<tr>\r\n<td>id</td>\r\n<td>Show the location in the computer's RAM where an object is stored.</td>\r\n<td><span class=\"code\">id(<</span><span class=\"code\"><em>name of object</em></span><span class=\"code\">>)</span><span class=\"code\"><br /></span><span class=\"code\">id(help)</span></td>\r\n</tr>\r\n<tr>\r\n<td>int</td>\r\n<td>Convert a string into an integer number.</td>\r\n<td><span class=\"code\">int(</span><span class=\"code\">'</span><span class=\"code\">0</span><span class=\"code\">'</span><span class=\"code\">)</span></td>\r\n</tr>\r\n<tr>\r\n<td>len</td>\r\n<td>Get the number of elements in a sequence.</td>\r\n<td><span class=\"code\">len([0,1])</span></td>\r\n</tr>\r\n<tr>\r\n<td>object</td>\r\n<td>A base on which other classes can inherit from.</td>\r\n<td><span class=\"code\">class CustomObject(object):</span></td>\r\n</tr>\r\n<tr>\r\n<td>open</td>\r\n<td>Open a file on disk, return a file object.</td>\r\n<td><span class=\"code\">open(<path to file>, <mode>)</span><br /><span class=\"code\">open('mydatafile.txt', 'r') # read</span><br />(opens a file to read data from)<br /><span class=\"code\">open('mydatafile.txt', 'w') # write</span><br />(creates a new file to write to, destroys any existing file with the same name)<br /><span class=\"code\">open('mydatafile.txt', 'a') # append</span><br />(adds to an existing file if any, or creates<br />a new one if none existing already)</td>\r\n</tr>\r\n<tr>\r\n<td>print</td>\r\n<td>Reimplementation of <span class=\"code\">print</span> keyword, but as a function.<br />Need to import from the future to use it (srsly!)<br /></td>\r\n<td><span class=\"code\">from future import print_function</span><br /><span class=\"code\">print ('Hello World!</span><span class=\"code\">'</span><span class=\"code\">)</span></td>\r\n</tr>\r\n<tr>\r\n<td>range</td>\r\n<td>Gives numbers between the lower and upper limits specified (including the lower, but excluding the upper limit). A step may be specified.</td>\r\n<td><span class=\"code\">range(10)</span><span class=\"code\"><br /></span><span class=\"code\">range(5,10)</span><span class=\"code\"><br /></span><span class=\"code\">range(1,10,2)</span></td>\r\n</tr>\r\n<tr>\r\n<td>raw_input</td>\r\n<td>Get some text as a string from the user, with an optional prompt.</td>\r\n<td><span class=\"code\">prompt =</span> <span class=\"code\">'</span><span class=\"code\">What is your guess?</span> <span class=\"code\">'</span><span class=\"code\"><br />players_guess = raw_input(prompt)</span></td>\r\n</tr>\r\n<tr>\r\n<td>str</td>\r\n<td>Convert an object (usually a number) into a string (usually for printing).</td>\r\n<td><span class=\"code\">str(0)</span></td>\r\n</tr>\r\n<tr>\r\n<td>type</td>\r\n<td>Give the type of the specified object.</td>\r\n<td><span class=\"code\">type(0)<br />type(</span><span class=\"code\">'</span><span class=\"code\">0</span><span class=\"code\">'</span><span class=\"code\">)<br />type([])<br />type({})<br />type(())</span></td>\r\n</tr>\r\n</tbody>\r\n</table>\r\n<p>Use the work that others have already done. Try these modules from the Python standard library.</p>\r\n<table border=\"0\">\r\n<caption>Selected Functions from the Standard Library </caption>\r\n<tbody>\r\n<tr>\r\n<th>Module</th><th>What It Does</th><th>Sample Functions/Objects</th>\r\n</tr>\r\n<tr>\r\n<td>os.path</td>\r\n<td>Functions relating to files and file paths.</td>\r\n<td><span class=\"code\">os.path.exists(<path to file>)</span></td>\r\n</tr>\r\n<tr>\r\n<td>pickle, cPickle</td>\r\n<td>Save and load objects to/from a file.</td>\r\n<td><span class=\"code\">pickle.load(<file object to load from>),</span> <span class=\"code\">pickle.dump(<object to dump>, <file object to save to>)</span></td>\r\n</tr>\r\n<tr>\r\n<td>random</td>\r\n<td>Various functions relating to random numbers.</td>\r\n<td><span class=\"code\">random.choice(<sequence to choose from>), random.randint(<lower limit>, <upper limit>), random.shuffle(<name of list to shuffle>)</span></td>\r\n</tr>\r\n<tr>\r\n<td>String</td>\r\n<td>Stuff relating to strings.</td>\r\n<td><span class=\"code\">string.printable</span></td>\r\n</tr>\r\n<tr>\r\n<td>sys</td>\r\n<td>Various functions related to your computer system.</td>\r\n<td><span class=\"code\">sys.exit()</span></td>\r\n</tr>\r\n<tr>\r\n<td>Time</td>\r\n<td>Time-related functions.</td>\r\n<td><span class=\"code\">time.time()</span></td>\r\n</tr>\r\n<tr>\r\n<td>Tkinter</td>\r\n<td>User interface widgets and associated constants.</td>\r\n<td><span class=\"code\">Tkinter.ALL</span><br /><span class=\"code\">Tkinter.BOTH</span><br /><span class=\"code\">Tkinter.CENTER</span><br /><span class=\"code\">Tkinter.END</span><br /><span class=\"code\">Tkinter.HORIZONTAL</span><br /><span class=\"code\">Tkinter.LEFT</span><br /><span class=\"code\">Tkinter.NW</span><br /><span class=\"code\">Tkinter.RIGHT</span><br /><span class=\"code\">Tkinter.TOP</span><br /><span class=\"code\">Tkinter.Y</span><br /><span class=\"code\">Tkinter.Button(<parent widget>,</span><br /><span class=\"code\">text=<button text>)</span><br /><span class=\"code\">Tkinter.Canvas(<parent widget>,</span><br /><span class=\"code\"> width=<width>, height=<height>)</span><br /><span class=\"code\">Tkinter.Checkbutton(<parent widget>,</span><br /><span class=\"code\"> text=<checkbutton text>)</span><br /><span class=\"code\">Tkinter.Entry(<parent widget>,</span><br /><span class=\"code\"> width=<number of characters wide>),</span><br /><span class=\"code\">Tkinter.Frame(<parent widget>)</span><br /><span class=\"code\">Tkinter.IntVar()</span><br /><span class=\"code\">Tkinter.Label(<parent widget>,</span><br /><span class=\"code\"> text = <label text>)</span><br /><span class=\"code\">Tkinter.mainloop()</span><br /><span class=\"code\">Tkinter.Menu(<parent widget>)</span><br /><span class=\"code\">Tkinter.OptionMenu(<parent widget>,</span><br /><span class=\"code\"> None, None)</span><br /><span class=\"code\">Tkinter.Scale(<parent widget>,</span><br /><span class=\"code\"> from_=<lower limit>,</span><br /><span class=\"code\"> to=<upper limit>)</span><br /><span class=\"code\">Tkinter.Scrollbar(<parent widget>)</span><br /><span class=\"code\">Tkinter.StringVar()</span><br /><span class=\"code\">Tkinter.Tk()</span><br /></td>\r\n</tr>\r\n</tbody>\r\n</table>\r\n<p>Add, subtract, divide, multiply, and more using these operators.</p>\r\n<table border=\"0\">\r\n<caption>Python Operators </caption>\r\n<tbody>\r\n<tr>\r\n<th>Operator</th><th>Name</th><th>Effect</th><th>Examples</th>\r\n</tr>\r\n<tr>\r\n<td>+</td>\r\n<td>Plus</td>\r\n<td>Add two numbers.<br />Join two strings together.</td>\r\n<td>Add: <span class=\"code\">>>> 1+1</span><span class=\"code\"><br /></span><span class=\"code\">2</span><span class=\"code\"><br /></span>Join: <span class=\"code\">>>></span> <span class=\"code\">'</span><span class=\"code\">a</span><span class=\"code\">'</span><span class=\"code\">+</span><span class=\"code\">'</span><span class=\"code\">b</span><span class=\"code\">'</span><span class=\"code\"><br /></span><span class=\"code\">'</span><span class=\"code\">ab</span><span class=\"code\">'</span></td>\r\n</tr>\r\n<tr>\r\n<td>–</td>\r\n<td>Minus</td>\r\n<td>Subtract a number from another.<br />Can't use for strings.</td>\r\n<td><span class=\"code\">>>> 1-1</span><span class=\"code\"><br /></span><span class=\"code\">0</span></td>\r\n</tr>\r\n<tr>\r\n<td>*</td>\r\n<td>Times</td>\r\n<td>Multiply two numbers.<br />Make copies of a string.</td>\r\n<td>Multiply: <span class=\"code\">>>> 2*2</span><span class=\"code\"><br /></span><span class=\"code\">4</span><span class=\"code\"><br /></span>Copy: <span class=\"code\">>>></span> <span class=\"code\">'</span><span class=\"code\">a</span><span class=\"code\">'</span><span class=\"code\">*2</span><span class=\"code\"><br /></span><span class=\"code\">'</span><span class=\"code\">aa</span><span class=\"code\">'</span></td>\r\n</tr>\r\n<tr>\r\n<td>/</td>\r\n<td>Divide</td>\r\n<td>Divide one number by another.<br />Can't use for strings.</td>\r\n<td>1/2 # integer division:<br />Answer will be rounded down.<br />1/2.0 # decimal division<br />1/float(2) # decimal division<br /></td>\r\n</tr>\r\n<tr>\r\n<td>%</td>\r\n<td>Remainder (Modulo)</td>\r\n<td>Give the remainder when dividing the left number by the right number.<br />Formatting operator for strings.</td>\r\n<td><span class=\"code\">>>> 10%3</span><br /><span class=\"code\">1</span></td>\r\n</tr>\r\n<tr>\r\n<td>**</td>\r\n<td>Power</td>\r\n<td><span class=\"code\">x**y</span> means raise <span class=\"code\">x</span> to the power of <span class=\"code\">y</span>.<br />Can't use for strings.</td>\r\n<td><span class=\"code\">>>> 3**2</span><span class=\"code\"><br /></span><span class=\"code\">9</span></td>\r\n</tr>\r\n<tr>\r\n<td>=</td>\r\n<td>Assignment</td>\r\n<td>Assign the value on the right to the variable on the left.</td>\r\n<td><span class=\"code\">>>> a = 1</span></td>\r\n</tr>\r\n<tr>\r\n<td>==</td>\r\n<td>Equality</td>\r\n<td>Is the left side equal to the right side? Is <span class=\"code\">True</span> if so; is <span class=\"code\">False</span> otherwise.</td>\r\n<td><span class=\"code\">>>> 1 == 1</span><br /><span class=\"code\">True</span><br /><span class=\"code\">>>> 'a' == 'a'</span><br /><span class=\"code\">True</span></td>\r\n</tr>\r\n<tr>\r\n<td>!=</td>\r\n<td>Not equal</td>\r\n<td>Is the left side <em>not</em> equal to the right side? Is <span class=\"code\">True</span> if so; is False otherwise.</td>\r\n<td><span class=\"code\">>>> 1 != 1</span><br /><span class=\"code\">False</span><br /><span class=\"code\">>>> 1 != 2</span><br /><span class=\"code\">True</span><br /><span class=\"code\">>>> 'a' != 'a'</span><br /><span class=\"code\">True</span></td>\r\n</tr>\r\n<tr>\r\n<td>></td>\r\n<td>Greater than</td>\r\n<td>Is the left side greater than the right side?<br /><span class=\"code\">>=</span> means greater than or equal to</td>\r\n<td><span class=\"code\">>>> 2 > 1</span><span class=\"code\"><br /></span><span class=\"code\">True</span></td>\r\n</tr>\r\n<tr>\r\n<td><</td>\r\n<td>Less than</td>\r\n<td>Is the left side less than the right side?<br /><span class=\"code\"><=</span> means less than or equal to</td>\r\n<td><span class=\"code\">>>> 1 < 2</span><span class=\"code\"><br /></span><span class=\"code\">True</span></td>\r\n</tr>\r\n<tr>\r\n<td>& (or and)</td>\r\n<td>And</td>\r\n<td>Are both left and right <span class=\"code\">True</span>?<br />Typically used for complex conditions where you want to do something if everything is <span class=\"code\">True</span>:<br /><span class=\"code\">while im_hungry and you_have_food:</span></td>\r\n<td><span class=\"code\">>>> True & True</span><br /><span class=\"code\">True</span><br /><span class=\"code\">>>> True and False</span><br /><span class=\"code\">False </span><br /><span class=\"code\">>>> True & (1 == 2)</span><br /><span class=\"code\">False</span></td>\r\n</tr>\r\n<tr>\r\n<td>| (or or)</td>\r\n<td>Or</td>\r\n<td>Is either left or right <span class=\"code\">True</span>?<br />Typically used for complex conditions where you want at least one thing to be <span class=\"code\">True</span>:<br /><span class=\"code\">while im_bored or youre_bored:</span></td>\r\n<td><span class=\"code\">>>> True | False</span><br /><span class=\"code\">True</span><br /><span class=\"code\">>>> True or False</span><br /><span class=\"code\">True</span><br /><span class=\"code\">>>> False | False</span><br /><span class=\"code\">False</span><br /><span class=\"code\">>>> (1 == 1) | False</span><br /><span class=\"code\">True</span></td>\r\n</tr>\r\n</tbody>\r\n</table>","blurb":"","authors":[{"authorId":9026,"name":"Brendan Scott","slug":"brendan-scott","description":" <p>Brendan Scott is a dad who loves Python and wants kids to get some of its magic too. He started pythonforkids.brendanscott.com to help teach his oldest child to code. He maintains it to help other young people learn Python.</p> ","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9026"}}],"primaryCategoryTaxonomy":{"categoryId":33606,"title":"Python","slug":"python","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33606"}},"secondaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"tertiaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"trendingArticles":null,"inThisArticle":[{"label":"Python Core Words","target":"#tab1"}],"relatedArticles":{"fromBook":[{"articleId":207407,"title":"Python For Kids For Dummies Cheat Sheet","slug":"python-for-kids-for-dummies-cheat-sheet","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/207407"}},{"articleId":141581,"title":"Use Python to Help with Your Math Homework","slug":"use-python-to-help-with-your-math-homework","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/141581"}},{"articleId":141443,"title":"Using Tkinter Widgets in Python","slug":"using-tkinter-widgets-in-python","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/141443"}},{"articleId":139551,"title":"How to Interrupt a Program in Python","slug":"how-to-interrupt-a-program-in-python","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/139551"}},{"articleId":139550,"title":"How to Name Functions in Python","slug":"how-to-name-functions-in-python","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/139550"}}],"fromCategory":[{"articleId":264919,"title":"How to Define and Use Python Lists","slug":"how-to-define-and-use-python-lists","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264919"}},{"articleId":264911,"title":"How to Use Lambda Functions in Python","slug":"how-to-use-lambda-functions-in-python","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264911"}},{"articleId":264906,"title":"Your Guide to the Python Standard Library","slug":"your-guide-to-the-python-standard-library","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264906"}},{"articleId":264894,"title":"A Beginner’s Guide to Python Versions","slug":"a-beginners-guide-to-python-versions","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264894"}},{"articleId":264888,"title":"How to Build a Simple Neural Network in Python","slug":"how-to-build-a-simple-neural-network-in-python","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264888"}}]},"hasRelatedBookFromSearch":false,"relatedBook":{"bookId":281835,"slug":"python-for-kids-for-dummies","isbn":"9781119093107","categoryList":["technology","programming-web-design","python"],"amazon":{"default":"//www.amazon.com/gp/product/1119093104/ref=as_li_tl?ie=UTF8&tag=wiley01-20","ca":"//www.amazon.ca/gp/product/1119093104/ref=as_li_tl?ie=UTF8&tag=wiley01-20","indigo_ca":"//www.tkqlhce.com/click-9208661-13710633?url=//www.chapters.indigo.ca/en-ca/books/product/1119093104-item.html&cjsku=978111945484","gb":"//www.amazon.co.uk/gp/product/1119093104/ref=as_li_tl?ie=UTF8&tag=wiley01-20","de":"//www.amazon.de/gp/product/1119093104/ref=as_li_tl?ie=UTF8&tag=wiley01-20"},"image":{"src":"//coursofppt.com/wp-content/uploads/python-for-kids-for-dummies-cover-9781119093107-203x255.jpg","width":203,"height":255},"title":"Python For Kids For Dummies","testBankPinActivationLink":"","bookOutOfPrint":false,"authorsInfo":"<p>Brendan Scott is a dad who loves Python and wants kids to get some of its magic too. He started pythonforkids.brendanscott.com to help teach his oldest child to code. He maintains it to help other young people learn Python.</p>","authors":[{"authorId":9026,"name":"Brendan Scott","slug":"brendan-scott","description":" <p>Brendan Scott is a dad who loves Python and wants kids to get some of its magic too. He started pythonforkids.brendanscott.com to help teach his oldest child to code. He maintains it to help other young people learn Python.</p> ","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9026"}}],"_links":{"self":"//dummies-api.coursofppt.com/v2/books/"}},"collections":[],"articleAds":{"footerAd":"<div class=\"du-ad-region row\" id=\"article_page_adhesion_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_adhesion_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;python&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781119093107&quot;]},{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;For Kids&quot;]}]\" id=\"du-slot-651d7e2ed9089\"></div></div>","rightAd":"<div class=\"du-ad-region row\" id=\"article_page_right_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_right_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;python&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781119093107&quot;]},{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;For Kids&quot;]}]\" id=\"du-slot-651d7e2eda216\"></div></div>"},"articleType":{"articleType":"Articles","articleList":null,"content":null,"videoInfo":{"videoId":null,"name":null,"accountId":null,"playerId":null,"thumbnailUrl":null,"description":null,"uploadDate":null}},"sponsorship":{"sponsorshipPage":false,"backgroundImage":{"src":null,"width":0,"height":0},"brandingLine":"","brandingLink":"","brandingLogo":{"src":null,"width":0,"height":0},"sponsorAd":"","sponsorEbookTitle":"","sponsorEbookLink":"","sponsorEbookImage":{"src":null,"width":0,"height":0}},"primaryLearningPath":"Advance","lifeExpectancy":"Two years","lifeExpectancySetFrom":"2024-10-04T00:00:00+00:00","dummiesForKids":"yes","sponsoredContent":"no","adInfo":"","adPairKey":[{"adPairKey":"cat","adPairValue":"For Kids"}]},"status":"publish","visibility":"public","articleId":141474},{"headers":{"creationTime":"2017-03-27T16:47:06+00:00","modifiedTime":"2024-10-03T17:18:35+00:00","timestamp":"2024-10-03T18:01:03+00:00"},"data":{"breadcrumbs":[{"name":"Technology","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33512"},"slug":"technology","categoryId":33512},{"name":"Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33592"},"slug":"programming-web-design","categoryId":33592},{"name":"Python","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33606"},"slug":"python","categoryId":33606}],"title":"Python for Data Science For Dummies Cheat Sheet","strippedTitle":"python for data science for dummies cheat sheet","slug":"python-for-data-science-for-dummies-cheat-sheet","canonicalUrl":"","收指数擎整合调整":{"metaDescription":"Perform data science tasks with minimum effort by using Python. Learn line plot styles, common programming errors, and more.","noIndex":0,"noFollow":0},"content":"Python is an incredible programming language that you can use to perform data science tasks with a minimum of effort. The huge number of available libraries means that the low-level code you normally need to write is likely already available from some other source.\r\n\r\nAll you need to focus on is getting the job done. With that in mind, this Cheat Sheet helps you access the most commonly needed reminders for making your programming experience fast and easy.","description":"Python is an incredible programming language that you can use to perform data science tasks with a minimum of effort. The huge number of available libraries means that the low-level code you normally need to write is likely already available from some other source.\r\n\r\nAll you need to focus on is getting the job done. With that in mind, this Cheat Sheet helps you access the most commonly needed reminders for making your programming experience fast and easy.","blurb":"","authors":[{"authorId":9109,"name":"John Paul Mueller","slug":"john-paul-mueller","description":"<b> John Mueller</b> has published more than 100 books on technology, data, and programming. John has a website and blog where he writes articles on technology and offers assistance alongside his published books.","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9109"}},{"authorId":9110,"name":"Luca Massaron","slug":"luca-massaron","description":"<b>Luca Massaron</b> is a data scientist specializing in insurance and finance. A Google Developer Expert in machine learning, he has been involved in quantitative analysis and algorithms since 2000.","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9110"}}],"primaryCategoryTaxonomy":{"categoryId":33606,"title":"Python","slug":"python","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33606"}},"secondaryCategoryTaxonomy":{"categoryId":33580,"title":"General Data Science","slug":"general-data-science","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33580"}},"tertiaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"trendingArticles":null,"inThisArticle":[],"relatedArticles":{"fromBook":[{"articleId":262687,"title":"Working with Google Colaboratory Notebooks","slug":"working-with-google-colaboratory-notebooks","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/262687"}},{"articleId":262680,"title":"Python Programming: Making Machine Learning Accessible with the Random Forest Algorithm","slug":"python-programming-making-machine-learning-accessible-with-the-random-forest-algorithm","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/262680"}},{"articleId":262675,"title":"What is Google Colaboratory?","slug":"what-is-google-colaboratory","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/262675"}},{"articleId":262651,"title":"Playing with Scikit-Learn and Neural Networks","slug":"playing-with-scikit-learn-and-neural-networks","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/262651"}},{"articleId":262643,"title":"Tips for Using Jupyter Notebook for Python Programming","slug":"tips-for-using-jupyter-notebook-for-python-programming","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/262643"}}],"fromCategory":[{"articleId":264919,"title":"How to Define and Use Python Lists","slug":"how-to-define-and-use-python-lists","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264919"}},{"articleId":264911,"title":"How to Use Lambda Functions in Python","slug":"how-to-use-lambda-functions-in-python","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264911"}},{"articleId":264906,"title":"Your Guide to the Python Standard Library","slug":"your-guide-to-the-python-standard-library","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264906"}},{"articleId":264894,"title":"A Beginner’s Guide to Python Versions","slug":"a-beginners-guide-to-python-versions","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264894"}},{"articleId":264888,"title":"How to Build a Simple Neural Network in Python","slug":"how-to-build-a-simple-neural-network-in-python","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264888"}}]},"hasRelatedBookFromSearch":false,"relatedBook":{"bookId":281834,"slug":"python-for-data-science-for-dummies-2nd-edition","isbn":"9781394213146","categoryList":["technology","programming-web-design","python"],"amazon":{"default":"//www.amazon.com/gp/product/139421314X/ref=as_li_tl?ie=UTF8&tag=wiley01-20","ca":"//www.amazon.ca/gp/product/139421314X/ref=as_li_tl?ie=UTF8&tag=wiley01-20","indigo_ca":"//www.tkqlhce.com/click-9208661-13710633?url=//www.chapters.indigo.ca/en-ca/books/product/139421314X-item.html&cjsku=978111945484","gb":"//www.amazon.co.uk/gp/product/139421314X/ref=as_li_tl?ie=UTF8&tag=wiley01-20","de":"//www.amazon.de/gp/product/139421314X/ref=as_li_tl?ie=UTF8&tag=wiley01-20"},"image":{"src":"//coursofppt.com/wp-content/uploads/python-for-data-science-for-dummies-3rd-edition-cover-9781394213146-203x255.jpg","width":203,"height":255},"title":"Python for Data Science For Dummies","testBankPinActivationLink":"","bookOutOfPrint":true,"authorsInfo":"<p><b> John Mueller</b> has published more than 100 books on technology, data, and programming. John has a website and blog where he writes articles on technology and offers assistance alongside his published books. <b><b data-author-id=\"9110\">Luca Massaron</b></b> is a data scientist specializing in insurance and finance. A Google Developer Expert in machine learning, he has been involved in quantitative analysis and algorithms since 2000.</p>","authors":[{"authorId":9109,"name":"John Paul Mueller","slug":"john-paul-mueller","description":"<b> John Mueller</b> has published more than 100 books on technology, data, and programming. John has a website and blog where he writes articles on technology and offers assistance alongside his published books.","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9109"}},{"authorId":9110,"name":"Luca Massaron","slug":"luca-massaron","description":"<b>Luca Massaron</b> is a data scientist specializing in insurance and finance. A Google Developer Expert in machine learning, he has been involved in quantitative analysis and algorithms since 2000.","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9110"}}],"_links":{"self":"//dummies-api.coursofppt.com/v2/books/"}},"collections":[],"articleAds":{"footerAd":"<div class=\"du-ad-region row\" id=\"article_page_adhesion_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_adhesion_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;python&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781394213146&quot;]}]\" id=\"du-slot-651c56df11374\"></div></div>","rightAd":"<div class=\"du-ad-region row\" id=\"article_page_right_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_right_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;python&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781394213146&quot;]}]\" id=\"du-slot-651c56df11cbd\"></div></div>"},"articleType":{"articleType":"Cheat Sheet","articleList":[{"articleId":142841,"title":"The 8 Most Common Python Programming Errors","slug":"the-8-most-common-python-programming-errors","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/142841"}},{"articleId":142839,"title":"Line Plot Styles","slug":"line-plot-styles","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/142839"}},{"articleId":142840,"title":"Common IPython Magic Functions","slug":"common-ipython-magic-functions","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/142840"}},{"articleId":142686,"title":"Scikit-Learn Method Summary","slug":"scikit-learn-method-summary","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/142686"}}],"content":[{"title":"The 8 most common Python programming errors","thumb":null,"image":null,"content":"<p>Every developer on the planet makes mistakes. However, knowing about common mistakes will save you time and effort later. The following list tells you about the most common errors that developers experience when working with Python:</p>\n<ul class=\"level-one\">\n<li>\n<p class=\"first-para\"><strong>Using the incorrect indentation:</strong> Many Python features rely on indentation. For example, when you create a new class, everything in that class is indented under the class declaration. The same is true for decision, loop, and other structural statements. If you find that your code is executing a task when it really shouldn’t be, start reviewing the indentation you’re using.</p>\n</li>\n<li>\n<p class=\"first-para\"><strong>Relying on the assignment operator instead of the equality operator:</strong> When performing a comparison between two objects or value, you just use the equality operator (==), not the assignment operator (=). The assignment operator places an object or value within a variable and doesn’t compare anything.</p>\n</li>\n<li>\n<p class=\"first-para\"><strong>Placing function calls in the wrong order when creating complex statements:</strong> Python always executes functions from left to right. So the statement <code>MyString.strip().center(21, \"*\")</code> produces a different result than <code>MyString.center(21, \"*\").strip()</code>. When you encounter a situation in which the output of a series of concatenated functions is different from what you expected, you need to check function order to ensure that each function is in the correct place.</p>\n</li>\n<li>\n<p class=\"first-para\"><strong>Misplacing punctuation:</strong> You can put punctuation in the wrong place and create an entirely different result. Remember that you must include a colon at the end of each structural statement. In addition, the placement of parentheses is critical. For example, <code>(1 + 2) * (3 + 4), 1 + ((2 * 3) + 4)</code>, and <code>1 + (2 * (3 + 4))</code> all produce different results.</p>\n</li>\n<li>\n<p class=\"first-para\"><strong>Using the incorrect logical operator:</strong> Most of the operators don’t present developers with problems, but the logical operators do. Remember to use <code>and </code>to determine when both operands must be <code>True </code>and <code>or </code>when either of the operands can be <code>True</code>.</p>\n</li>\n<li>\n<p class=\"first-para\"><strong>Creating count-by-one errors on loops:</strong> Remember that a loop doesn’t count the last number you specify in a range. So, if you specify the range <code>[1:11]</code>, you actually get output for values between 1 and 10.</p>\n</li>\n<li>\n<p class=\"first-para\"><strong>Using the wrong capitalization:</strong> Python is case sensitive, so MyVar is different from myvar and MYVAR. Always check capitalization when you find that you can’t access a value you expected to access.</p>\n</li>\n<li>\n<p class=\"first-para\"><strong>Making a spelling mistake:</strong> Even seasoned developers suffer from spelling errors at times. Ensuring that you use a common approach to naming variables, classes, and functions does help. However, even a consistent naming scheme won’t always prevent you from typing MyVer when you meant to type MyVar.</p>\n</li>\n<li><strong>Misunderstanding how function defaults work:</strong> A function’s default value is set at the time it’s first evaluated, rather than each time you call it. Consequently, a function declaration like this:def myFunc(list=[]):list.append(&#8220;value&#8221;)\n<p>return list</p>\n<p>will only provide an empty list the first time you call it, rather than every time you call it without providing a value for list. Subsequent calls will simply add &#8220;value&#8221; to an ever growing list. So if you call myFunc() three times, <span style=\"text-decoration: line-through;\">list</span> will actually equal [&#8220;value&#8221;, &#8220;value&#8221;, &#8220;value&#8221;]. The workaround for this issue is to check the input value every time in the code and act accordingly, such as:</p>\n<p>def myFunc(list=None):</p>\n<p>if list is None:</p>\n<p>list = []</p>\n<p>list.append(&#8220;value&#8221;)</p>\n<p>return list</li>\n<li><strong>Modifying a list while iterating over it:</strong> If a developer is lucky, this particular mistake results in an index out-of-range error. At least there is some indication of where to look. However, when working with some data science problems that don’t use the entire list, but simply iterate over parts of it, the mistake can introduce all sorts of data skewing and analysis problems that can be extremely difficult to locate (assuming that you know there is a problem at all). Using list comprehensions is a common method of avoiding this problem.</li>\n<li><strong>Creating a module name that clashes with a Python standard library module:</strong> If you create a module that has the same name as an existing Python module, Python may import your module instead of the one you wanted, leading to some difficult-to-find errors. The best way to avoid this issue is to ensure that you use module names that are guaranteed to be unique, such as prepending your organization name to the module name.</li>\n</ul>\n"},{"title":"Line plot styles","thumb":null,"image":null,"content":"<p>Whenever you create a plot, you need to identify the sources of information using more than just the lines. Creating a plot that uses differing line types and data point symbols makes the plot much easier for other people to use. The following table lists the line plot styles.</p>\n<table>\n<tbody>\n<tr>\n<td colspan=\"2\"><strong>Color</strong></td>\n<td colspan=\"2\"><strong>Marker</strong></td>\n<td colspan=\"2\"><strong>Style</strong></td>\n</tr>\n<tr>\n<td><strong>Code</strong></td>\n<td><strong>Line Color</strong></td>\n<td><strong>Code</strong></td>\n<td><strong>Marker Style</strong></td>\n<td><strong>Code</strong></td>\n<td><strong>Line Style</strong></td>\n</tr>\n<tr>\n<td>b</td>\n<td>blue</td>\n<td>.</td>\n<td>point</td>\n<td>&#8211;</td>\n<td>Solid</td>\n</tr>\n<tr>\n<td>g</td>\n<td>green</td>\n<td>o</td>\n<td>circle</td>\n<td>:</td>\n<td>Dotted</td>\n</tr>\n<tr>\n<td>r</td>\n<td>red</td>\n<td>x</td>\n<td>x-mark</td>\n<td>-.</td>\n<td>dash dot</td>\n</tr>\n<tr>\n<td>c</td>\n<td>cyan</td>\n<td>+</td>\n<td>plus</td>\n<td>&#8212;</td>\n<td>Dashed</td>\n</tr>\n<tr>\n<td>m</td>\n<td>magenta</td>\n<td>*</td>\n<td>star</td>\n<td>(none)</td>\n<td>no line</td>\n</tr>\n<tr>\n<td>y</td>\n<td>yellow</td>\n<td>s</td>\n<td>square</td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td>k</td>\n<td>black</td>\n<td>d</td>\n<td>diamond</td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td>w</td>\n<td>white</td>\n<td>v</td>\n<td>down triangle</td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td></td>\n<td></td>\n<td>^</td>\n<td>up triangle</td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td></td>\n<td></td>\n<td>&lt;</td>\n<td>left triangle</td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td></td>\n<td></td>\n<td>&gt;</td>\n<td>right triangle</td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td></td>\n<td></td>\n<td>p</td>\n<td>5-point star</td>\n<td></td>\n<td></td>\n</tr>\n<tr>\n<td></td>\n<td></td>\n<td>h</td>\n<td>6-point star</td>\n<td></td>\n<td></td>\n</tr>\n</tbody>\n</table>\n<p class=\"Tip\">Remember that you can also use these styles with other kinds of plots. For example, a scatter plot can use these styles to define each of the data points. When in doubt, try the styles to see whether they’ll work with your particular plot.</p>\n"},{"title":"Common IPython Magic Functions","thumb":null,"image":null,"content":"<p>It’s kind of amazing to think that IPython provides you with magic, but that’s precisely what you get with the magic functions. Most magic functions begin with either a % or %% sign. Those with a % sign work within the environment, and those with a %% sign work at the cell level.</p>\n<p>There are a few specialized functions, such as the system command escape (!), that require a special symbol or technique. Of these, the system command escape is the most essential to know. Another useful alternative is variable expansion ($), which is used like $(myVar), to provide a value without retyping it.</p>\n<p>Note that the magic functions work best with Jupyter Notebook. People using alternatives, such as Google Colab, may find that some magic functions fail to provide the desired result.</p>\n<p>The following list gives you a few of the most common magic functions and their purposes. To obtain a full list, type <strong>%quickref</strong> and press Enter in Jupyter Notebook or Google Colab, or <a href=\"//damontallen.github.io/IPython-quick-ref-sheets/\" target=\"_blank\" rel=\"noopener\">check out the full list</a>.</p>\n<table>\n<tbody>\n<tr>\n<td width=\"97\"><strong>Magic Function</strong></td>\n<td width=\"84\"><strong>Type Alone Provides Status?</strong></td>\n<td width=\"351\"><strong>Description</strong></td>\n</tr>\n<tr>\n<td width=\"97\">%%timeit or %%prun</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Calculates the best time performance for all the instructions in a cell, apart from the one placed on the same cell line as the cell magic (which could therefore be an initialization instruction). The %%prun variant provides more detailed information because it relies on the Python profiler output.</td>\n</tr>\n<tr>\n<td width=\"97\">%%writefile</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Writes the contents of a cell to the specified file.</td>\n</tr>\n<tr>\n<td width=\"97\">%alias</td>\n<td width=\"84\">Yes</td>\n<td width=\"351\">Assigns or displays an alias for a system command.</td>\n</tr>\n<tr>\n<td width=\"97\">%autocall</td>\n<td width=\"84\">Yes</td>\n<td width=\"351\">Enables you to call functions without including the parentheses. The settings are Off, Smart (default), and Full. The Smart setting applies the parentheses only if you include an argument with the call.</td>\n</tr>\n<tr>\n<td width=\"97\">%automagic</td>\n<td width=\"84\">Yes</td>\n<td width=\"351\">Enables you to call the line magic functions without including the % sign. The settings are False (default) and True.</td>\n</tr>\n<tr>\n<td width=\"97\">%bookmark</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Sets, lists, or clears bookmarks used to track the current location within a drive’s directory system. <a href=\"//ipythonbook.com/magic/bookmark.html\" target=\"_blank\" rel=\"noopener\">This article</a> provides additional information on using this magic.</td>\n</tr>\n<tr>\n<td width=\"97\">%cd</td>\n<td width=\"84\">Yes</td>\n<td width=\"351\">Changes directory to a new storage location. You can also use this command to move through the directory history or to change directories to a bookmark.</td>\n</tr>\n<tr>\n<td width=\"97\">%cls or %clear</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Clears the screen.</td>\n</tr>\n<tr>\n<td width=\"97\">%colors</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Specifies the colors used to display text associated with prompts, the information system, and exception handlers. You can choose between NoColor (black and white), Linux (default), and LightBG.</td>\n</tr>\n<tr>\n<td width=\"97\">%config</td>\n<td width=\"84\">Yes</td>\n<td width=\"351\">Enables you to configure IPython.</td>\n</tr>\n<tr>\n<td width=\"97\">%debug or %%debug</td>\n<td width=\"84\">Yes</td>\n<td width=\"351\">Starts the Python interactive debugger so that it’s possible to debug an application within the Notebook environment.</td>\n</tr>\n<tr>\n<td width=\"97\">%dhist</td>\n<td width=\"84\">Yes</td>\n<td width=\"351\">Displays a list of directories visited during the current session.</td>\n</tr>\n<tr>\n<td width=\"97\">%env</td>\n<td width=\"84\">Yes</td>\n<td width=\"351\">Gets, sets, or lists environment variables.</td>\n</tr>\n<tr>\n<td width=\"97\">%file</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Outputs the name of the file that contains the source code for the object.</td>\n</tr>\n<tr>\n<td width=\"97\">%hist</td>\n<td width=\"84\">Yes</td>\n<td width=\"351\">Displays a list of magic function commands issued during the current session.</td>\n</tr>\n<tr>\n<td width=\"97\">%install_ext</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Installs the specified extension.</td>\n</tr>\n<tr>\n<td width=\"97\">%load</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Loads application code from another source, such as an online example.</td>\n</tr>\n<tr>\n<td width=\"97\">%load_ext</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Loads a Python extension using its module name.</td>\n</tr>\n<tr>\n<td width=\"97\">%lsmagic</td>\n<td width=\"84\">Yes</td>\n<td width=\"351\">Displays a list of the currently available magic functions.</td>\n</tr>\n<tr>\n<td width=\"97\">%matplotlib</td>\n<td width=\"84\">Yes</td>\n<td width=\"351\">Sets the backend processor used for plots. Using the inline value displays the plot within the cell for an IPython Notebook file. The possible values are ‘gtk’, ‘gtk3’, ‘inline’, ‘nbagg’, ‘osx’, ‘qt’, ‘qt4’, ‘qt5’, ‘tk’, and ‘wx’.</td>\n</tr>\n<tr>\n<td width=\"97\">%more</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Displays a file through the pager so that it’s possible to scan a data file while working in it in code.</td>\n</tr>\n<tr>\n<td width=\"97\">%paste</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Pastes the content of the clipboard into the IPython environment.</td>\n</tr>\n<tr>\n<td width=\"97\">%pdef</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Shows how to call the object (assuming that the object is callable).</td>\n</tr>\n<tr>\n<td width=\"97\">%pdoc</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Displays the docstring for an object.</td>\n</tr>\n<tr>\n<td width=\"97\">%pinfo</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Displays detailed information about the object (often more than provided by help alone).</td>\n</tr>\n<tr>\n<td width=\"97\">%pinfo2</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Displays extra detailed information about the object (when available).</td>\n</tr>\n<tr>\n<td width=\"97\">%psource</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Displays the source code for the object (assuming that the source is available).</td>\n</tr>\n<tr>\n<td width=\"97\">%reload_ext</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Reloads a previously installed extension.</td>\n</tr>\n<tr>\n<td width=\"97\">%timeit or %prun</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Calculates the best performance time for an instruction. The %prun variant provides more detailed information because it relies on the Python profiler output.</td>\n</tr>\n<tr>\n<td width=\"97\">%unalias</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Removes a previously created alias from the list.</td>\n</tr>\n<tr>\n<td width=\"97\">%unload_ext</td>\n<td width=\"84\">No</td>\n<td width=\"351\">Unloads the specified extension.</td>\n</tr>\n</tbody>\n</table>\n<p>&nbsp;</p>\n"}],"videoInfo":{"videoId":null,"name":null,"accountId":null,"playerId":null,"thumbnailUrl":null,"description":null,"uploadDate":null}},"sponsorship":{"sponsorshipPage":false,"backgroundImage":{"src":null,"width":0,"height":0},"brandingLine":"","brandingLink":"","brandingLogo":{"src":null,"width":0,"height":0},"sponsorAd":"","sponsorEbookTitle":"","sponsorEbookLink":"","sponsorEbookImage":{"src":null,"width":0,"height":0}},"primaryLearningPath":"Advance","lifeExpectancy":"Two years","lifeExpectancySetFrom":"2024-10-02T00:00:00+00:00","dummiesForKids":"no","sponsoredContent":"no","adInfo":"","adPairKey":[]},"status":"publish","visibility":"public","articleId":207489},{"headers":{"creationTime":"2017-03-26T21:26:50+00:00","modifiedTime":"2024-09-29T14:42:59+00:00","timestamp":"2024-09-29T15:01:03+00:00"},"data":{"breadcrumbs":[{"name":"Technology","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33512"},"slug":"technology","categoryId":33512},{"name":"Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33592"},"slug":"programming-web-design","categoryId":33592},{"name":"HTML","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33600"},"slug":"html","categoryId":33600}],"title":"How to Add Sound to Your Web Site Using HTML","strippedTitle":"how to add sound to your web site using html","slug":"how-to-add-sound-to-your-web-site-using-html","canonicalUrl":"","收指数擎整合调整":{"metaDescription":"There are plusses and minuses of adding sound to your Web page, but if you decide adding sound is of value to your Web page visitors, HTML offers two competing ","noIndex":0,"noFollow":0},"content":"There are plusses and minuses of adding sound to your Web page, but if you decide adding sound is of value to your Web page visitors, HTML offers two competing ways to add it: with the <code>&lt;bgsound&gt;</code> tag and with the <code>embed</code> tag.\r\n\r\nThe <code>&lt;bgsound&gt;</code> tag works well and has useful options for controlling sound, but it’s not supported by all browsers.\r\n\r\nThis example uses the <code>&lt;embed&gt;</code> tag, which is not officially supported by the HTML standard at all, but it works in most browsers. <code>&lt;embed&gt;</code> has options for different media players, such as Windows Media Player or Apple QuickTime.\r\n\r\nFollow these steps to add sound to a Web page in a text editor:\r\n<ol class=\"level-one\">\r\n \t<li>\r\n<p class=\"first-para\">Open your Web page in Notepad.</p>\r\n<p class=\"child-para\">Let your Web page’s user know they can stop sound from playing in your Web page by clicking the Stop button in their browsers.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\">Enter the <code>&lt;embed&gt;</code> tag and a link to the sound file you want to use.</p>\r\n<p class=\"child-para\">An example looks like this: <code> &lt;embed src=</code><code>&lt;i&gt;“pathname/filename”&lt;/i&gt;</code><code>&gt;</code>, <code>&lt;i&gt;“pathname/filename”&lt;/i&gt;</code> is a link to the sound file.</p>\r\n<p class=\"child-para\">The simplest way to be sure you have the link right is to place the sound file in the same folder as the Web page; that way the link is simply the filename.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\">Click File→Save and reopen the file.</p>\r\n<p class=\"child-para\">The sound should play. Test the link right away to be sure it will work.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\">If the sound doesn’t play, experiment to make sure you have the path right and that sound plays on your machine.</p>\r\n<p class=\"child-para\">To make sure you have the link right, put the file in the same folder as your Web page and simplify the link. To make sure that sound playback works on your machine, navigate to the file in Windows Explorer and click it. It should play. If not, identify and fix the files affecting sound playback on your machine.</p>\r\n</li>\r\n</ol>","description":"There are plusses and minuses of adding sound to your Web page, but if you decide adding sound is of value to your Web page visitors, HTML offers two competing ways to add it: with the <code>&lt;bgsound&gt;</code> tag and with the <code>embed</code> tag.\r\n\r\nThe <code>&lt;bgsound&gt;</code> tag works well and has useful options for controlling sound, but it’s not supported by all browsers.\r\n\r\nThis example uses the <code>&lt;embed&gt;</code> tag, which is not officially supported by the HTML standard at all, but it works in most browsers. <code>&lt;embed&gt;</code> has options for different media players, such as Windows Media Player or Apple QuickTime.\r\n\r\nFollow these steps to add sound to a Web page in a text editor:\r\n<ol class=\"level-one\">\r\n \t<li>\r\n<p class=\"first-para\">Open your Web page in Notepad.</p>\r\n<p class=\"child-para\">Let your Web page’s user know they can stop sound from playing in your Web page by clicking the Stop button in their browsers.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\">Enter the <code>&lt;embed&gt;</code> tag and a link to the sound file you want to use.</p>\r\n<p class=\"child-para\">An example looks like this: <code> &lt;embed src=</code><code>&lt;i&gt;“pathname/filename”&lt;/i&gt;</code><code>&gt;</code>, <code>&lt;i&gt;“pathname/filename”&lt;/i&gt;</code> is a link to the sound file.</p>\r\n<p class=\"child-para\">The simplest way to be sure you have the link right is to place the sound file in the same folder as the Web page; that way the link is simply the filename.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\">Click File→Save and reopen the file.</p>\r\n<p class=\"child-para\">The sound should play. Test the link right away to be sure it will work.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\">If the sound doesn’t play, experiment to make sure you have the path right and that sound plays on your machine.</p>\r\n<p class=\"child-para\">To make sure you have the link right, put the file in the same folder as your Web page and simplify the link. To make sure that sound playback works on your machine, navigate to the file in Windows Explorer and click it. It should play. If not, identify and fix the files affecting sound playback on your machine.</p>\r\n</li>\r\n</ol>","blurb":"","authors":[{"authorId":9283,"name":"Bud E. Smith","slug":"bud-e-smith","description":" Mark Middlebrook, an AutoCAD expert, is president of Daedalus Consulting and a contributing editor at CADALYST magazine. Bud Smith is a veteran For Dummies author.","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9283"}}],"primaryCategoryTaxonomy":{"categoryId":33600,"title":"HTML","slug":"html","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33600"}},"secondaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"tertiaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"trendingArticles":null,"inThisArticle":[],"relatedArticles":{"fromBook":[],"fromCategory":[{"articleId":206142,"title":"How to Use the CoffeeCup HTML Editor","slug":"how-to-use-the-coffeecup-html-editor","categoryList":["technology","programming-web-design","html"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/206142"}},{"articleId":206138,"title":"How to Create HTML Lists in Notepad","slug":"how-to-create-html-lists-in-notepad","categoryList":["technology","programming-web-design","html"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/206138"}},{"articleId":193063,"title":"How to Use HTML Lists on Your Web Page","slug":"how-to-use-html-lists-on-your-web-page","categoryList":["technology","programming-web-design","html"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/193063"}},{"articleId":193018,"title":"How to Create a Text Navigation Bar in HTML","slug":"how-to-create-a-text-navigation-bar-in-html","categoryList":["technology","programming-web-design","html"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/193018"}},{"articleId":189340,"title":"A Sample Web Page in HTML","slug":"a-sample-web-page-in-html","categoryList":["technology","programming-web-design","html"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/189340"}}]},"hasRelatedBookFromSearch":false,"relatedBook":{"bookId":0,"slug":null,"isbn":null,"categoryList":null,"amazon":null,"image":null,"title":null,"testBankPinActivationLink":null,"bookOutOfPrint":false,"authorsInfo":null,"authors":null,"_links":null},"collections":[],"articleAds":{"footerAd":"<div class=\"du-ad-region row\" id=\"article_page_adhesion_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_adhesion_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;html&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[null]}]\" id=\"du-slot-6516e6af0b5f6\"></div></div>","rightAd":"<div class=\"du-ad-region row\" id=\"article_page_right_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_right_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;html&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[null]}]\" id=\"du-slot-6516e6af0bee9\"></div></div>"},"articleType":{"articleType":"Articles","articleList":null,"content":null,"videoInfo":{"videoId":null,"name":null,"accountId":null,"playerId":null,"thumbnailUrl":null,"description":null,"uploadDate":null}},"sponsorship":{"sponsorshipPage":false,"backgroundImage":{"src":null,"width":0,"height":0},"brandingLine":"","brandingLink":"","brandingLogo":{"src":null,"width":0,"height":0},"sponsorAd":"","sponsorEbookTitle":"","sponsorEbookLink":"","sponsorEbookImage":{"src":null,"width":0,"height":0}},"primaryLearningPath":"Advance","lifeExpectancy":"One year","lifeExpectancySetFrom":"2024-09-29T00:00:00+00:00","dummiesForKids":"no","sponsoredContent":"no","adInfo":"","adPairKey":[]},"status":"publish","visibility":"public","articleId":193022},{"headers":{"creationTime":"2024-07-05T17:09:19+00:00","modifiedTime":"2024-09-25T18:56:27+00:00","timestamp":"2024-09-25T21:01:03+00:00"},"data":{"breadcrumbs":[{"name":"Technology","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33512"},"slug":"technology","categoryId":33512},{"name":"Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33592"},"slug":"programming-web-design","categoryId":33592},{"name":"General Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33610"},"slug":"general-programming-web-design","categoryId":33610}],"title":"HTML, CSS, & JavaScript All-in-One For Dummies Cheat Sheet","strippedTitle":"html, css, & javascript all-in-one for dummies cheat sheet","slug":"html-css-javascript-all-in-one-for-dummies-cheat-sheet","canonicalUrl":"","收指数擎整合调整":{"metaDescription":"This Cheat Sheet has handy info you can use when learning the basics of HTML, CSS, and JavaScript, including ready-to-go HTML templates.","noIndex":0,"noFollow":0},"content":"One of the bonuses you get when you tackle HTML, CSS, and JavaScript is that after you learn a few basics, you can apply those basics to any project. A good example is the underlying structure of a page, which uses the same set of standard HTML tags, no matter how large or small the project.\r\n\r\nIt’s also worth your time to learn the most powerful CSS selectors, because you use those selectors all the time to speed up your work when you’re writing rules.\r\n\r\nProgramming errors, too, are a fact of web coding life, so understanding the most useful JavaScript debugging strategies can help you fix your code faster and get back to more creative pursuits.","description":"One of the bonuses you get when you tackle HTML, CSS, and JavaScript is that after you learn a few basics, you can apply those basics to any project. A good example is the underlying structure of a page, which uses the same set of standard HTML tags, no matter how large or small the project.\r\n\r\nIt’s also worth your time to learn the most powerful CSS selectors, because you use those selectors all the time to speed up your work when you’re writing rules.\r\n\r\nProgramming errors, too, are a fact of web coding life, so understanding the most useful JavaScript debugging strategies can help you fix your code faster and get back to more creative pursuits.","blurb":"","authors":[{"authorId":11290,"name":"Paul McFedries","slug":"paul-mcfedries","description":" <p><b>Paul McFedries</b> is the owner of Logophilia Limited, a successful technical writing firm. He has 25 years&#8217; experience writing instructional computer books and is the author of over 100 books that have sold a combined 4 million copies worldwide.</p> ","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/11290"}}],"primaryCategoryTaxonomy":{"categoryId":33610,"title":"General Programming & Web Design","slug":"general-programming-web-design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33610"}},"secondaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"tertiaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"trendingArticles":null,"inThisArticle":[],"relatedArticles":{"fromBook":[],"fromCategory":[{"articleId":265680,"title":"Using DevOps To Improve Engineering","slug":"tips-for-improving-engineering-performance-with-devops","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265680"}},{"articleId":265675,"title":"How To Automate DevOps in the Cloud","slug":"make-more-of-your-cloud-tools-automating-devops-in-the-cloud","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265675"}},{"articleId":265672,"title":"How To Choose a Cloud Service Provider for DevOps","slug":"choosing-the-best-cloud-service-provider-features-and-tools-for-devops","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265672"}},{"articleId":265664,"title":"How to Form DevOps Teams in Your Organization","slug":"how-to-form-devops-teams-in-your-organization","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265664"}},{"articleId":265656,"title":"Moving to DevOps Processes: From a Line to a Circuit","slug":"moving-to-devops-processes-from-a-line-to-a-circuit","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265656"}}]},"hasRelatedBookFromSearch":false,"relatedBook":{"bookId":299520,"slug":"html-css-javascript-all-in-one-for-dummies","isbn":"9781394164684","categoryList":["technology","programming-web-design","general-programming-web-design"],"amazon":{"default":"//www.amazon.com/gp/product/1394164688/ref=as_li_tl?ie=UTF8&tag=wiley01-20","ca":"//www.amazon.ca/gp/product/1394164688/ref=as_li_tl?ie=UTF8&tag=wiley01-20","indigo_ca":"//www.tkqlhce.com/click-9208661-13710633?url=//www.chapters.indigo.ca/en-ca/books/product/1394164688-item.html&cjsku=978111945484","gb":"//www.amazon.co.uk/gp/product/1394164688/ref=as_li_tl?ie=UTF8&tag=wiley01-20","de":"//www.amazon.de/gp/product/1394164688/ref=as_li_tl?ie=UTF8&tag=wiley01-20"},"image":{"src":"//coursofppt.com/wp-content/uploads/html-css-javascript-all-in-one-for-dummies-9781394164684-203x255.jpg","width":203,"height":255},"title":"HTML, CSS, & JavaScript All-in-One For Dummies","testBankPinActivationLink":"","bookOutOfPrint":true,"authorsInfo":"<p><b><b data-author-id=\"11290\">Paul McFedries</b></b> is the owner of Logophilia Limited, a successful technical writing firm. He has 25 years&#8217; experience writing instructional computer books and is the author of over 100 books that have sold a combined 4 million copies worldwide.</p>","authors":[{"authorId":11290,"name":"Paul McFedries","slug":"paul-mcfedries","description":" <p><b>Paul McFedries</b> is the owner of Logophilia Limited, a successful technical writing firm. He has 25 years&#8217; experience writing instructional computer books and is the author of over 100 books that have sold a combined 4 million copies worldwide.</p> ","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/11290"}}],"_links":{"self":"//dummies-api.coursofppt.com/v2/books/"}},"collections":[],"articleAds":{"footerAd":"<div class=\"du-ad-region row\" id=\"article_page_adhesion_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_adhesion_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;general-programming-web-design&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781394164684&quot;]}]\" id=\"du-slot-6511f50f42930\"></div></div>","rightAd":"<div class=\"du-ad-region row\" id=\"article_page_right_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_right_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;general-programming-web-design&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781394164684&quot;]}]\" id=\"du-slot-6511f50f42e7d\"></div></div>"},"articleType":{"articleType":"Cheat Sheet","articleList":[{"articleId":0,"title":"","slug":null,"categoryList":[],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/"}}],"content":[{"title":"Your ready-to-roll HTML template","thumb":null,"image":null,"content":"<p>All web pages use more or less the same basic HTML structure. This means you can get any new web project off on the right foot by first laying down a solid foundation that includes valid HTML and semantic page tags.</p>\n<p>Rather than create this foundation from scratch each time, you can save yourself some time along with wear and tear on your typing fingers by creating a template file that you can copy for each new project.</p>\n<p>To get you started, here are the HTML tags to add to your template:</p>\n<pre class=\"code\">&lt;!doctype html&gt;\r\n&lt;html lang=\"en\"&gt;\r\n &lt;head&gt;\r\n &lt;meta charset=\"utf-8\"&gt;\r\n &lt;meta name=\"viewport\" content=\"width=device-width, initial-scale=1.0\"&gt;\r\n &lt;title&gt;Barebones HTML Template&lt;/title&gt;\r\n &lt;style&gt;\r\n /*\r\n * Put your internal styles here or replace with\r\n * &lt;link href=\"filename.css\" rel=\"stylesheet\"&gt;\r\n */\r\n &lt;/style&gt;\r\n &lt;/head&gt;\r\n &lt;body&gt;\r\n &lt;header&gt;\r\n &lt;h1&gt;Site Title&lt;/h1&gt;\r\n &lt;/header&gt;\r\n &lt;nav&gt;\r\n Navigation links\r\n &lt;/nav&gt;\r\n &lt;main&gt;\r\n &lt;article&gt;\r\n &lt;h2&gt;Article Title&lt;/h2&gt;\r\n &lt;/article&gt;\r\n &lt;aside&gt;\r\n &lt;h3&gt;Aside Title&lt;/h3&gt;\r\n &lt;/aside&gt;\r\n &lt;/main&gt;\r\n &lt;footer&gt;\r\n Footer stuff\r\n &lt;/footer&gt;\r\n &lt;script&gt;\r\n /*\r\n * Your internal JavaScript goes here.\r\n * Alternatively, replace with\r\n * &lt;script src=\"filename.js\"&gt;&lt;/script&gt;\r\n */\r\n &lt;/script&gt; \r\n &lt;/body&gt;\r\n&lt;/html&gt;\r\n</pre>\n<p class=\"article-tips remember\">For the &lt;link&gt; and &lt;script&gt; tags, be sure to adjust the filenames as needed, and be sure to add the path to each file if you’ve stored them in subdirectories.</p>\n"},{"title":"15 must-know CSS selectors","thumb":null,"image":null,"content":"<p>CSS saves you oodles of time by making it easy to style page elements. CSS becomes even more powerful when you use selectors to specify which elements you want to work with.</p>\n<p>Here are the selectors you need to tape to your cat’s forehead so that they’re always handy:</p>\n<h3><strong>The class selector</strong></h3>\n<p>If you’ve used the <em>class</em> attribute to assign a class name to one or more page elements, you can target those elements by using a <em>class selector</em>:</p>\n<p>HTML:</p>\n<pre class=\"code\"> &lt;<em>element</em> class=\"<em>class-name</em>\"&gt;\r\n</pre>\n<p>CSS:</p>\n<pre class=\"code\"> .<em>class-name</em> {\r\n <em>property1</em>: <em>value1</em>;\r\n <em>property2</em>: <em>value2</em>;\r\n etc.\r\n }\r\n</pre>\n<h3><strong>The id selector</strong></h3>\n<p>If you’ve used the <em>id</em> attribute to assign an ID to a page element, you can target that element by using an <em>id selector:</em></p>\n<p>HTML:</p>\n<pre class=\"code\"> &lt;<em>element</em> id=\"<em>id-name</em>\"&gt;\r\n</pre>\n<p>CSS:</p>\n<pre class=\"code\"> #<em>id-name</em> {\r\n <em>property1</em>: <em>value1</em>;\r\n <em>property2</em>: <em>value2</em>;\r\n etc.\r\n }\r\n</pre>\n<h3><strong>The type selector</strong></h3>\n<p>To target every element that uses a particular element name (such as <em>header</em> or <em>div</em>), use the <em>type selector:</em></p>\n<pre class=\"code\"> <em>element</em> {\r\n <em>property1</em>: <em>value1</em>;\r\n <em>property2</em>: <em>value2</em>;\r\n etc.\r\n }\r\n</pre>\n<h3><strong>The attribute equals selector</strong></h3>\n<p>To target every instance of an element that uses an attribute with a specified value, use the <em>attribute equals selector:</em></p>\n<pre class=\"code\"> <em>element</em>[<em>attr</em>=\"<em>value</em>\"] {\r\n <em>property1</em>: <em>value1</em>;\r\n <em>property2</em>: <em>value2</em>;\r\n etc.\r\n }\r\n</pre>\n<h3><strong>The descendant combinator</strong></h3>\n<p>To target every element that’s contained within (that is, is a descendant of) a specified ancestor element, use the <em>descendant combinator</em> (a space):</p>\n<pre class=\"code\"> <em>ancestor</em> <em>descendant</em> {\r\n <em>property1</em>: <em>value1</em>;\r\n <em>property2</em>: <em>value2</em>;\r\n etc.\r\n }\r\n</pre>\n<h3><strong>The child combinator</strong></h3>\n<p>To target every element that resides one level below (that is, is a child of) a specified parent element, use the <em>child combinator</em> (&gt;):</p>\n<pre class=\"code\"> <em>parent</em> &gt; <em>child</em> {\r\n <em>property1</em>: <em>value1</em>;\r\n <em>property2</em>: <em>value2</em>;\r\n etc.\r\n }\r\n</pre>\n<h3><strong>The subsequent-sibling combinator</strong></h3>\n<p>To target every sibling element that follows a reference element, use the <em>subsequent-sibling combinator</em> (~):</p>\n<pre class=\"code\"> <em>reference </em>~<em> target</em> {\r\n <em>property1</em>: <em>value1</em>;\r\n <em>property2</em>: <em>value2</em>;\r\n etc.\r\n }\r\n</pre>\n<h3><strong>The next-sibling combinator</strong></h3>\n<p>To target the sibling element that comes immediately after a reference element, use the <em>next-sibling combinator</em> (+):</p>\n<pre class=\"code\"> <em>reference </em>+<em> target</em> {\r\n <em>property1</em>: <em>value1</em>;\r\n <em>property2</em>: <em>value2</em>;\r\n etc.\r\n }\r\n</pre>\n<h3><strong>The first-child or last-child pseudo-classes</strong></h3>\n<p>To target any child element that’s the first or last of a parent element’s children, use the <em>first-child </em>or <em>last-child pseudo-class</em>:</p>\n<pre class=\"code\"> <em>element</em>:first-child {\r\n <em>element</em>:last-child {\r\n <em>property1</em>: <em>value1</em>;\r\n <em>property2</em>: <em>value2</em>;\r\n etc.\r\n }\r\n</pre>\n<h3><strong>The nth-child or nth-last-child pseudo-class</strong></h3>\n<p>To target any child element that’s the nth or nth-last of a parent element’s children, use the <em>nth-child </em>or <em>nth-last-child pseudo-class</em>:</p>\n<pre class=\"code\"> <em>element</em>:nth-child(<em>n</em>) {\r\n <em>element</em>:nth-last-child(<em>n</em>) {\r\n <em>property1</em>: <em>value1</em>;\r\n <em>property2</em>: <em>value2</em>;\r\n etc.\r\n }\r\n</pre>\n<h3><strong>The </strong><strong>:is() </strong><strong>pseudo-class</strong></h3>\n<p>To target elements that match any of the selectors in a specified selector list and where the overall specificity of the selector is the highest weight of the items in the selector list, use the<strong> :is() </strong>pseudo-class:</p>\n<pre class=\"code\"> <em>element</em>:is(<em>selector-list</em>) {\r\n <em>property1</em>: <em>value1</em>;\r\n <em>property2</em>: <em>value2</em>;\r\n etc.\r\n }\r\n</pre>\n<h3><strong>The </strong><strong>:where() </strong><strong>pseudo-class </strong></h3>\n<p>To target elements that match any of the selectors in a specified selector list and where the overall specificity of the selector is 0, use the :where() pseudo-class:</p>\n<pre class=\"code\"> <em>element</em>:where(<em>selector-list</em>) {\r\n <em>property1</em>: <em>value1</em>;\r\n <em>property2</em>: <em>value2</em>;\r\n etc.\r\n }\r\n</pre>\n<h3><strong>The :not() pseudo-class </strong></h3>\n<p>To target elements that don’t match any of the selectors in a specified selector list, use the :not() pseudo-class:</p>\n<pre class=\"code\"> <em>element</em>:not(<em>selector-list</em>) {\r\n <em>property1</em>: <em>value1</em>;\r\n <em>property2</em>: <em>value2</em>;\r\n etc.\r\n }\r\n</pre>\n<h3><strong>The :has() pseudo-class </strong></h3>\n<p>To target an ancestor, parent, or previous sibling that has a descendant, child, or sibling (respectively) in a specified selector list, use the :has() pseudo-class:</p>\n<pre class=\"code\"> <em>element</em>:has(<em>selector-list</em>) {\r\n <em>property1</em>: <em>value1</em>;\r\n <em>property2</em>: <em>value2</em>;\r\n etc.\r\n }\r\n</pre>\n"},{"title":"Top 10 JavaScript debugging strategies","thumb":null,"image":null,"content":"<p>Given any nontrivial JavaScript code, it’s a rare (probably nonexistent!) script that runs perfectly the first (or even the tenth!) time.</p>\n<p>Script bugs happen to even the most experienced developers, so having errors in your code does not mean you’re a failure as a coder! All it means is that you’re a coder.</p>\n<p>But when bugs get into your code, you’ll want to exterminate them as quickly as you can. Here are ten debugging strategies that can help:</p>\n<ul>\n<li><strong>Get thee to your dev tools:</strong> All web page debugging begins with a visit to your web browser development tools. In every browser, the quickest way to open the dev tools is to right-click a page element and then click Inspect. You can also press Ctrl+Shift+I (Windows) or Option@@cmd+I (macOS).</li>\n<li><strong>The console is your best debugging friend:</strong> In your code, you can see the current value of a variable or object property by outputting that value to the dev tools Console tab:\n<pre class=\"code\">console.log(<em>output</em>);</pre>\n<ul>\n<li>output: The expression you want to print in the Console. The output expression can be a text string, a variable, an object property, a function result, or any combination of these.</li>\n</ul>\n</li>\n<li><strong>Give your code a break(point):</strong> Pausing your code enables you to see what’s going on and to run some commands in the console. You have two ways to pause your code mid-execution:\n<ul>\n<li><strong>Set a breakpoint:</strong> In the dev tools, open the file that contains the JavaScript code, locate the statement where you want to pause, and then click the line number to the left of that statement.</li>\n<li><strong>Add a</strong> <strong>debugger statement:</strong> In your JavaScript code, on the line just before the statement where you want to pause, add a debugger statement.</li>\n</ul>\n</li>\n<li><strong>Step through your code:</strong> Once you have some JavaScript code in break mode, use the dev tools execution controls to step through the code. You can step one statement at a time, step over functions, or step into functions.</li>\n<li><strong>Monitor variable and object property values:</strong> Either use console.log() statements to output values to the console or, when your code is in break mode, hover the mouse pointer over the variable or object to see its current value in a tooltip. You can also create watch expressions to monitor values.</li>\n<li><strong>Indent your code</strong><strong>.</strong> JavaScript code is immeasurably more readable when you indent the code within each statement block. Readable code is that much easier to trace and decipher, so your debugging efforts have one less hurdle to negotiate. Indenting each statement by two or four spaces is typical.</li>\n<li><strong>Break down complex tasks</strong><strong>.</strong> Don’t try to solve all your problems at once. If you have a large script or function that isn’t working right, test it in small chunks to try to narrow down the problem.</li>\n<li><strong>Break up long statements</strong><strong>.</strong> One of the most complicated aspects of script debugging is making sense out of long statements (especially expressions). The Console window can help (you can use it to print parts of the statement), but it’s usually best to keep your statements as short as possible. Once you get things working properly, you can often recombine statements for more efficient code.</li>\n<li><strong>Comment out problem statements</strong><strong>.</strong> If a particular statement is giving you problems, you can temporarily deactivate it by placing two slashes (//) at the beginning of the line. This tells JavaScript to treat the line as a comment. If you have a number of statements you want to skip, place/* at the beginning of the first statement and */ at the end of the last statement.</li>\n<li><strong>Use comments to document your scripts</strong><strong>.</strong> Speaking of comments, it’s a programming truism that you can never add enough explanatory comments to your code. The more comments you add, the easier your scripts will be to debug.</li>\n</ul>\n"}],"videoInfo":{"videoId":null,"name":null,"accountId":null,"playerId":null,"thumbnailUrl":null,"description":null,"uploadDate":null}},"sponsorship":{"sponsorshipPage":false,"backgroundImage":{"src":null,"width":0,"height":0},"brandingLine":"","brandingLink":"","brandingLogo":{"src":null,"width":0,"height":0},"sponsorAd":"","sponsorEbookTitle":"","sponsorEbookLink":"","sponsorEbookImage":{"src":null,"width":0,"height":0}},"primaryLearningPath":"Advance","lifeExpectancy":"Two years","lifeExpectancySetFrom":"2024-07-05T00:00:00+00:00","dummiesForKids":"no","sponsoredContent":"no","adInfo":"","adPairKey":[]},"status":"publish","visibility":"public","articleId":299575},{"headers":{"creationTime":"2017-03-26T10:52:17+00:00","modifiedTime":"2024-09-13T18:43:31+00:00","timestamp":"2024-09-13T21:01:03+00:00"},"data":{"breadcrumbs":[{"name":"Technology","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33512"},"slug":"technology","categoryId":33512},{"name":"Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33592"},"slug":"programming-web-design","categoryId":33592},{"name":"Python","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33606"},"slug":"python","categoryId":33606}],"title":"8 Major Uses of Python","strippedTitle":"8 major uses of python","slug":"10-major-uses-of-python","canonicalUrl":"","收指数擎整合调整":{"metaDescription":"Python programming language continues to play an important role in many companies' technology systems and applications.","noIndex":0,"noFollow":0},"content":"Many organizations are using Python these days to perform major tasks. You don't necessarily hear about them because organizations are usually reserved about giving out their trade secrets. However, Python is still there making a big difference in the way organizations work and toward keeping the bottom line from bottoming out.\r\n\r\nFollowing, are some major ways in which Python is used commercially that will make it easier to argue for using Python in your own organization. (Or you can read about some <a href=\"//www.python.org/about/success/\" target=\"_blank\" rel=\"noopener\">Python success stories</a>.)\r\n<ul class=\"level-one\">\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//www.paintshoppro.com/en/\" target=\"_blank\" rel=\"noopener\">Corel</a>: PaintShop Pro is a product that many people have used over the years to grab screenshots, modify their pictures, draw new images, and perform a lot of other graphics-oriented tasks. The amazing thing about this product is that it relies heavily on Python scripting. In other words, to automate tasks in PaintShop Pro, you need to know Python.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//us.dlink.com/en/consumer\" target=\"_blank\" rel=\"noopener\">D-Link</a>: Upgrading firmware over a network connection can be problematic, and D-Link was encountering a situation in which each upgrade was tying up a machine — a poor use of resources. In addition, some upgrades required additional work because of problems with the target device. Using Python to create a multithreaded application to drive updates to the devices allows one machine to service multiple devices, and a new methodology allowed by Python reduces the number of reboots to just one after that new firmware is installed. D-Link chose Python over other languages, such as Java, because it provides an easier-to-use serial communication code.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//www.eveonline.com/\" target=\"_blank\" rel=\"noopener\">Eve-Online</a>: Games are a major business because so many people enjoy playing them. Eve-Online is a Massively Multiplayer Online Role Playing Game (MMORPG) that relies heavily on Python for both the client and server ends of the game. It actually relies on a Python variant named <a href=\"//wiki.python.org/moin/StacklessPython\" target=\"_blank\" rel=\"noopener\">StacklessPython</a>, which is important because you encounter these variants all the time when working with Python. Think of them as Python on steroids. These variants have all the advantages of Python, plus a few extra perks. The thing to take away from this particular company is that running an MMORPG takes major horsepower, and the company wouldn't have chosen Python unless it were actually up to the task.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//www.forecastwatch.com/\" target=\"_blank\" rel=\"noopener\">ForecastWatch.com</a>: If you have ever wondered whether someone reviews the performance of your weatherman, look no further than ForecastWatch.com. This company compares the forecasts produced by thousands of weather forecasters each day against actual climatological data to determine their accuracy. The resulting reports are used to help improve weather forecasts. In this case, the software used to make the comparisons is written in pure Python because it comes with standard libraries useful in collecting, parsing, and storing data from online sources. In addition, Python's enhanced multithreading capabilities makes it possible to collect the forecasts from around 5,000 online sources each day. Most important of all, the code is much smaller than would have been needed by other languages such as Java or PHP.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//www.frequentis.com/\" target=\"_blank\" rel=\"noopener\">Frequentis</a>: The next time you fly somewhere, you might be relying on Python to get you to the ground safely again. It turns out that Frequentis is the originator of TAPTools, a software product that is used for air traffic control in many airports. This particular tool provides updates on the weather and runway conditions to air traffic controllers.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//honeywell.com/Pages/Home.aspx\">Honeywell</a>: Documenting large systems is expensive and error prone. Honeywell uses Python to perform automated testing of applications, but it also uses Python to control a cooperative environment between applications used to generate documentation for the applications. The result is that Python helps generate the reports that form the documentation for the setup.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//www.ilm.com/\" target=\"_blank\" rel=\"noopener\">Industrial Light & Magic</a>: In this case, you find Python used in the production process for scripting complex, computer graphic-intensive films. Originally, Industrial Light & Magic relied on Unix shell scripting, but it was found that this solution just couldn't do the job. Python was compared to other languages, such as Tcl and Perl, and chosen because it's an easier-to-learn language that the organization can implement incrementally. In addition, Python can be embedded within a larger software system as a scripting language, even if the system is written in a language such as C/C++. It turns out that Python can successfully interact with these other languages in situations in which some languages can't.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//www.usa.philips.com/\" target=\"_blank\" rel=\"noopener\">Philips</a>: Automation is essential in the semiconductor industry, so imagine trying to coordinate the effort of thousands of robots. After a number of solutions, Philips decided to go with Python for the sequencing language (the language that tells what steps each robot should take). The low-level code is written in C++, which is another reason to use Python, because Python works well with C++.</p>\r\n</li>\r\n</ul>","description":"Many organizations are using Python these days to perform major tasks. You don't necessarily hear about them because organizations are usually reserved about giving out their trade secrets. However, Python is still there making a big difference in the way organizations work and toward keeping the bottom line from bottoming out.\r\n\r\nFollowing, are some major ways in which Python is used commercially that will make it easier to argue for using Python in your own organization. (Or you can read about some <a href=\"//www.python.org/about/success/\" target=\"_blank\" rel=\"noopener\">Python success stories</a>.)\r\n<ul class=\"level-one\">\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//www.paintshoppro.com/en/\" target=\"_blank\" rel=\"noopener\">Corel</a>: PaintShop Pro is a product that many people have used over the years to grab screenshots, modify their pictures, draw new images, and perform a lot of other graphics-oriented tasks. The amazing thing about this product is that it relies heavily on Python scripting. In other words, to automate tasks in PaintShop Pro, you need to know Python.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//us.dlink.com/en/consumer\" target=\"_blank\" rel=\"noopener\">D-Link</a>: Upgrading firmware over a network connection can be problematic, and D-Link was encountering a situation in which each upgrade was tying up a machine — a poor use of resources. In addition, some upgrades required additional work because of problems with the target device. Using Python to create a multithreaded application to drive updates to the devices allows one machine to service multiple devices, and a new methodology allowed by Python reduces the number of reboots to just one after that new firmware is installed. D-Link chose Python over other languages, such as Java, because it provides an easier-to-use serial communication code.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//www.eveonline.com/\" target=\"_blank\" rel=\"noopener\">Eve-Online</a>: Games are a major business because so many people enjoy playing them. Eve-Online is a Massively Multiplayer Online Role Playing Game (MMORPG) that relies heavily on Python for both the client and server ends of the game. It actually relies on a Python variant named <a href=\"//wiki.python.org/moin/StacklessPython\" target=\"_blank\" rel=\"noopener\">StacklessPython</a>, which is important because you encounter these variants all the time when working with Python. Think of them as Python on steroids. These variants have all the advantages of Python, plus a few extra perks. The thing to take away from this particular company is that running an MMORPG takes major horsepower, and the company wouldn't have chosen Python unless it were actually up to the task.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//www.forecastwatch.com/\" target=\"_blank\" rel=\"noopener\">ForecastWatch.com</a>: If you have ever wondered whether someone reviews the performance of your weatherman, look no further than ForecastWatch.com. This company compares the forecasts produced by thousands of weather forecasters each day against actual climatological data to determine their accuracy. The resulting reports are used to help improve weather forecasts. In this case, the software used to make the comparisons is written in pure Python because it comes with standard libraries useful in collecting, parsing, and storing data from online sources. In addition, Python's enhanced multithreading capabilities makes it possible to collect the forecasts from around 5,000 online sources each day. Most important of all, the code is much smaller than would have been needed by other languages such as Java or PHP.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//www.frequentis.com/\" target=\"_blank\" rel=\"noopener\">Frequentis</a>: The next time you fly somewhere, you might be relying on Python to get you to the ground safely again. It turns out that Frequentis is the originator of TAPTools, a software product that is used for air traffic control in many airports. This particular tool provides updates on the weather and runway conditions to air traffic controllers.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//honeywell.com/Pages/Home.aspx\">Honeywell</a>: Documenting large systems is expensive and error prone. Honeywell uses Python to perform automated testing of applications, but it also uses Python to control a cooperative environment between applications used to generate documentation for the applications. The result is that Python helps generate the reports that form the documentation for the setup.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//www.ilm.com/\" target=\"_blank\" rel=\"noopener\">Industrial Light & Magic</a>: In this case, you find Python used in the production process for scripting complex, computer graphic-intensive films. Originally, Industrial Light & Magic relied on Unix shell scripting, but it was found that this solution just couldn't do the job. Python was compared to other languages, such as Tcl and Perl, and chosen because it's an easier-to-learn language that the organization can implement incrementally. In addition, Python can be embedded within a larger software system as a scripting language, even if the system is written in a language such as C/C++. It turns out that Python can successfully interact with these other languages in situations in which some languages can't.</p>\r\n</li>\r\n \t<li>\r\n<p class=\"first-para\"><a href=\"//www.usa.philips.com/\" target=\"_blank\" rel=\"noopener\">Philips</a>: Automation is essential in the semiconductor industry, so imagine trying to coordinate the effort of thousands of robots. After a number of solutions, Philips decided to go with Python for the sequencing language (the language that tells what steps each robot should take). The low-level code is written in C++, which is another reason to use Python, because Python works well with C++.</p>\r\n</li>\r\n</ul>","blurb":"","authors":[{"authorId":9109,"name":"John Paul Mueller","slug":"john-paul-mueller","description":" <p><b> John Mueller</b> has published more than 100 books on technology, data, and programming. John has a website and blog where he writes articles on technology and offers assistance alongside his published books.</p> <p><b>Luca Massaron</b> is a data scientist specializing in insurance and finance. A Google Developer Expert in machine learning, he has been involved in quantitative analysis and algorithms since 2000. ","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9109"}}],"primaryCategoryTaxonomy":{"categoryId":33606,"title":"Python","slug":"python","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33606"}},"secondaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"tertiaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"trendingArticles":null,"inThisArticle":[],"relatedArticles":{"fromBook":[{"articleId":250588,"title":"How to Get Additional Python Libraries","slug":"get-additional-python-libraries","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/250588"}},{"articleId":250582,"title":"Printing Lists Using Python","slug":"printing-lists-using-python","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/250582"}},{"articleId":250578,"title":"How Permanent Storage Works for Python Programming","slug":"understanding-permanent-storage-works-python-programming","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/250578"}},{"articleId":250575,"title":"Extending Python Classes to Make New Classes","slug":"extending-python-classes-make-new-classes","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/250575"}},{"articleId":250571,"title":"Understanding the Python Class as a Packaging Method","slug":"understanding-python-class-packaging-method","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/250571"}}],"fromCategory":[{"articleId":264919,"title":"How to Define and Use Python Lists","slug":"how-to-define-and-use-python-lists","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264919"}},{"articleId":264911,"title":"How to Use Lambda Functions in Python","slug":"how-to-use-lambda-functions-in-python","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264911"}},{"articleId":264906,"title":"Your Guide to the Python Standard Library","slug":"your-guide-to-the-python-standard-library","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264906"}},{"articleId":264894,"title":"A Beginner’s Guide to Python Versions","slug":"a-beginners-guide-to-python-versions","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264894"}},{"articleId":264888,"title":"How to Build a Simple Neural Network in Python","slug":"how-to-build-a-simple-neural-network-in-python","categoryList":["technology","programming-web-design","python"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/264888"}}]},"hasRelatedBookFromSearch":false,"relatedBook":{"bookId":281830,"slug":"beginning-programming-with-python-for-dummies-2nd-edition","isbn":"9781119913771","categoryList":["technology","programming-web-design","python"],"amazon":{"default":"//www.amazon.com/gp/product/1119913772/ref=as_li_tl?ie=UTF8&tag=wiley01-20","ca":"//www.amazon.ca/gp/product/1119913772/ref=as_li_tl?ie=UTF8&tag=wiley01-20","indigo_ca":"//www.tkqlhce.com/click-9208661-13710633?url=//www.chapters.indigo.ca/en-ca/books/product/1119913772-item.html&cjsku=978111945484","gb":"//www.amazon.co.uk/gp/product/1119913772/ref=as_li_tl?ie=UTF8&tag=wiley01-20","de":"//www.amazon.de/gp/product/1119913772/ref=as_li_tl?ie=UTF8&tag=wiley01-20"},"image":{"src":"//coursofppt.com/wp-content/uploads/beginning-programming-with-python-for-dummies-3rd-edition-cover-9781119913771-203x255.jpg","width":203,"height":255},"title":"Beginning Programming with Python For Dummies","testBankPinActivationLink":"","bookOutOfPrint":true,"authorsInfo":"<p><p><b> John Mueller</b> has published more than 100 books on technology, data, and programming. John has a website and blog where he writes articles on technology and offers assistance alongside his published books.</p> <p><b>Luca Massaron</b> is a data scientist specializing in insurance and finance. A Google Developer Expert in machine learning, he has been involved in quantitative analysis and algorithms since 2000.</p>","authors":[{"authorId":9109,"name":"John Paul Mueller","slug":"john-paul-mueller","description":" <p><b> John Mueller</b> has published more than 100 books on technology, data, and programming. John has a website and blog where he writes articles on technology and offers assistance alongside his published books.</p> <p><b>Luca Massaron</b> is a data scientist specializing in insurance and finance. A Google Developer Expert in machine learning, he has been involved in quantitative analysis and algorithms since 2000. ","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9109"}}],"_links":{"self":"//dummies-api.coursofppt.com/v2/books/"}},"collections":[{"title":"Pondering the Pi Possibilities","slug":"pondering-the-pi-possibilities","collectionId":297524}],"articleAds":{"footerAd":"<div class=\"du-ad-region row\" id=\"article_page_adhesion_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_adhesion_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;python&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781119913771&quot;]}]\" id=\"du-slot-6502230f39d23\"></div></div>","rightAd":"<div class=\"du-ad-region row\" id=\"article_page_right_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_right_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;python&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781119913771&quot;]}]\" id=\"du-slot-6502230f3a26b\"></div></div>"},"articleType":{"articleType":"Articles","articleList":null,"content":null,"videoInfo":{"videoId":null,"name":null,"accountId":null,"playerId":null,"thumbnailUrl":null,"description":null,"uploadDate":null}},"sponsorship":{"sponsorshipPage":false,"backgroundImage":{"src":null,"width":0,"height":0},"brandingLine":"","brandingLink":"","brandingLogo":{"src":null,"width":0,"height":0},"sponsorAd":"","sponsorEbookTitle":"","sponsorEbookLink":"","sponsorEbookImage":{"src":null,"width":0,"height":0}},"primaryLearningPath":"Advance","lifeExpectancy":"Six months","lifeExpectancySetFrom":"2022-12-27T00:00:00+00:00","dummiesForKids":"no","sponsoredContent":"no","adInfo":"","adPairKey":[]},"status":"publish","visibility":"public","articleId":148755},{"headers":{"creationTime":"2017-03-27T16:48:30+00:00","modifiedTime":"2024-09-06T20:12:43+00:00","timestamp":"2024-09-06T21:01:02+00:00"},"data":{"breadcrumbs":[{"name":"Technology","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33512"},"slug":"technology","categoryId":33512},{"name":"Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33592"},"slug":"programming-web-design","categoryId":33592},{"name":"3D Printing","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33593"},"slug":"3d-printing","categoryId":33593}],"title":"3D Printing For Dummies Cheat Sheet","strippedTitle":"3d printing for dummies cheat sheet","slug":"3d-printing-for-dummies-cheat-sheet","canonicalUrl":"","收指数擎整合调整":{"metaDescription":"You don't have to wait on manufacturers or fancy molds anymore. Learn how to build your own 3D printer using the RepRap family of designs.","noIndex":0,"noFollow":0},"content":"Unlike traditional manufacturing, which involves injecting material into a pre-formed mold or removing material from base material objects, 3D printing starts with a virtual 3D model that is transformed into solid form one layer at a time. Each layer is built on top of the layer before, creating a solid form representing the virtual 3D model in all of its complexity and detail without requiring additional forms of machining and treatment necessary in traditional forms of manufacturing.\r\n\r\nYou can buy an off-the-shelf desktop 3D printer or build your own 3D printer using the open-source self-REPlicating RAPid-prototyper (RepRap) family of designs. Check out these helpful articles to guide you toward selecting the right RepRap design for you.","description":"Unlike traditional manufacturing, which involves injecting material into a pre-formed mold or removing material from base material objects, 3D printing starts with a virtual 3D model that is transformed into solid form one layer at a time. Each layer is built on top of the layer before, creating a solid form representing the virtual 3D model in all of its complexity and detail without requiring additional forms of machining and treatment necessary in traditional forms of manufacturing.\r\n\r\nYou can buy an off-the-shelf desktop 3D printer or build your own 3D printer using the open-source self-REPlicating RAPid-prototyper (RepRap) family of designs. Check out these helpful articles to guide you toward selecting the right RepRap design for you.","blurb":"","authors":[{"authorId":9516,"name":"Richard Horne","slug":"richard-horne","description":"<b>Richard Horne</b> is an electronics engineer, product designer, technical salesman, and problem solver with more than 30 years of experience and innovation across industries. Known in the community as RichRap, his blog makes 3D printing easier for everyone to understand.","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9516"}}],"primaryCategoryTaxonomy":{"categoryId":33593,"title":"3D Printing","slug":"3d-printing","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33593"}},"secondaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"tertiaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"trendingArticles":null,"inThisArticle":[],"relatedArticles":{"fromBook":[{"articleId":244638,"title":"Cooling 3D Printer Extruders with Fans","slug":"cooling-3d-printer-extruders-fans","categoryList":["technology","programming-web-design","3d-printing"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244638"}},{"articleId":244634,"title":"Acquire an Assortment of Extruders for Your 3D Printer","slug":"acquire-assortment-extruders-3d-printer","categoryList":["technology","programming-web-design","3d-printing"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244634"}},{"articleId":244631,"title":"3D Printers: Fixing a Blocked Hot-End or Extruder","slug":"3d-printers-fixing-blocked-hot-end-extruder","categoryList":["technology","programming-web-design","3d-printing"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244631"}},{"articleId":244626,"title":"Tips for 3D Printer Thermoplastic Extruder Operation","slug":"tips-3d-printer-thermoplastic-extruder-operation","categoryList":["technology","programming-web-design","3d-printing"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244626"}},{"articleId":244617,"title":"Multicolor 3D Print Methods","slug":"multicolor-3d-print-methods","categoryList":["technology","programming-web-design","3d-printing"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244617"}}],"fromCategory":[{"articleId":244638,"title":"Cooling 3D Printer Extruders with Fans","slug":"cooling-3d-printer-extruders-fans","categoryList":["technology","programming-web-design","3d-printing"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244638"}},{"articleId":244634,"title":"Acquire an Assortment of Extruders for Your 3D Printer","slug":"acquire-assortment-extruders-3d-printer","categoryList":["technology","programming-web-design","3d-printing"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244634"}},{"articleId":244631,"title":"3D Printers: Fixing a Blocked Hot-End or Extruder","slug":"3d-printers-fixing-blocked-hot-end-extruder","categoryList":["technology","programming-web-design","3d-printing"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244631"}},{"articleId":244626,"title":"Tips for 3D Printer Thermoplastic Extruder Operation","slug":"tips-3d-printer-thermoplastic-extruder-operation","categoryList":["technology","programming-web-design","3d-printing"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244626"}},{"articleId":244617,"title":"Multicolor 3D Print Methods","slug":"multicolor-3d-print-methods","categoryList":["technology","programming-web-design","3d-printing"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/244617"}}]},"hasRelatedBookFromSearch":false,"relatedBook":{"bookId":281612,"slug":"3d-printing-for-dummies-2nd-edition","isbn":"9781394169474","categoryList":["technology","programming-web-design","3d-printing"],"amazon":{"default":"//www.amazon.com/gp/product/1394169477/ref=as_li_tl?ie=UTF8&tag=wiley01-20","ca":"//www.amazon.ca/gp/product/1394169477/ref=as_li_tl?ie=UTF8&tag=wiley01-20","indigo_ca":"//www.tkqlhce.com/click-9208661-13710633?url=//www.chapters.indigo.ca/en-ca/books/product/1394169477-item.html&cjsku=978111945484","gb":"//www.amazon.co.uk/gp/product/1394169477/ref=as_li_tl?ie=UTF8&tag=wiley01-20","de":"//www.amazon.de/gp/product/1394169477/ref=as_li_tl?ie=UTF8&tag=wiley01-20"},"image":{"src":"//coursofppt.com/wp-content/uploads/9781394169474-205x255.jpg","width":205,"height":255},"title":"3D Printing For Dummies","testBankPinActivationLink":"","bookOutOfPrint":true,"authorsInfo":"<p><b><b data-author-id=\"9516\">Richard Horne</b></b> is an electronics engineer, product designer, technical salesman, and problem solver with more than 30 years of experience and innovation across industries. Known in the community as RichRap, his blog makes 3D printing easier for everyone to understand.</p>","authors":[{"authorId":9516,"name":"Richard Horne","slug":"richard-horne","description":"<b>Richard Horne</b> is an electronics engineer, product designer, technical salesman, and problem solver with more than 30 years of experience and innovation across industries. Known in the community as RichRap, his blog makes 3D printing easier for everyone to understand.","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/9516"}}],"_links":{"self":"//dummies-api.coursofppt.com/v2/books/"}},"collections":[],"articleAds":{"footerAd":"<div class=\"du-ad-region row\" id=\"article_page_adhesion_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_adhesion_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;3d-printing&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781394169474&quot;]}]\" id=\"du-slot-64f8e88ebec4a\"></div></div>","rightAd":"<div class=\"du-ad-region row\" id=\"article_page_right_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_right_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;3d-printing&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781394169474&quot;]}]\" id=\"du-slot-64f8e88ebf1a0\"></div></div>"},"articleType":{"articleType":"Cheat Sheet","articleList":[{"articleId":158754,"title":"Deciding on a RepRap of Your Own for 3D Printing","slug":"deciding-on-a-reprap-of-your-own-for-3d-printing","categoryList":["technology","programming-web-design","3d-printing"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/158754"}},{"articleId":158752,"title":"Understanding RepRap 3D Printer Control Electronics","slug":"understanding-reprap-3d-printer-control-electronics","categoryList":["technology","programming-web-design","3d-printing"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/158752"}},{"articleId":158755,"title":"Assembling the RepRap Extruder and RepRap Upgrades on a 3D Printer","slug":"assembling-the-reprap-extruder-and-reprap-upgrades-on-a-3d-printer","categoryList":["technology","programming-web-design","3d-printing"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/158755"}},{"articleId":158753,"title":"Identifying 3D Printer Software and Machine Calibration","slug":"identifying-3d-printer-software-and-machine-calibration","categoryList":["technology","programming-web-design","3d-printing"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/158753"}}],"content":[{"title":"Deciding on a RepRap of your own for 3D printing","thumb":null,"image":null,"content":"<p>When it comes to desktop 3D printing, selecting a RepRap printer for personal use begins with an analysis of your particular needs in terms of the type, size, and other qualities of the printer.</p>\n<p>Do you, for example, want a turnkey off-the-shelf model or a build-it-yourself creation? Total cost is also a factor, along with source licensing preferences such as the determination of open versus closed source technologies.</p>\n<p>Some of the RepRap designs include:</p>\n<ul>\n<li><strong>Mendel, Prusa Mendel, Mendel90, Prusa i3:</strong> One of the more common branches of Cartesian design, this printer has spawned many variations including the miniaturized Huxley.</li>\n<li><strong>Wallace and Printrbot:</strong> Common educational-sector alternatives for kit construction.</li>\n<li><strong>MendelMax:</strong> This is the derivative of the Prusa Mendel that’s an example of Cartesian RepRaps.</li>\n<li><strong>Ultimaker:</strong> A box-frame RepRap using Cartesian movement.</li>\n<li><strong>Tantillus:</strong> A miniature box-frame RepRap; it has the most 3D printable parts of current RepRap variations.</li>\n<li>Several RepRap options exist beyond the standard Cartesian format, including:</li>\n<li><strong>Rostock, RostockMax:</strong> A Delta-format RepRap printer that provides a tall build volume, the RostockMax is a laser-cut kit form.</li>\n<li><strong>Voron 3D:</strong> A core XY design, the Voron 3D is most often bought as a complete build kit of parts. It&#8217;s a very capable and advanced machine but can be a challenge to build.</li>\n<li><strong>3DR:</strong> An alternative delta-style RepRap designed by Richard Horne, based on the Rostock format with inspiration from the Tantillus for self-replication.</li>\n</ul>\n<p>After identifying the type of printer, you will need to select the proper type of plastic filament you wish to print with and the components that will be used in building the printer itself, including the framework, extruder, build plate, control electronics, and software that will be used.</p>\n"},{"title":"Understanding RepRap 3D printer control electronics","thumb":null,"image":null,"content":"<p>A RepRap 3D printer is an example of a purpose-built robot, using the popular open-source Arduino microcontroller at its heart, together with stepper motor controllers, motors, and sensors to control its movements.</p>\n<p>Some custom 3D printer boards have been created to integrate an Arduino’s functions and the related items typically found on a 3D printing shield that attaches to the basic format. Some of these options include:</p>\n<ul>\n<li><strong>RAMPS:</strong> The original Arduino shield designed for multiple stepper motor control and management of the extruder and build plate heaters.</li>\n<li><strong>RAMBo:</strong> A modular all-in-one combination of the Arduino board and RAMPS shield.</li>\n<li><strong>Sanguinololu:</strong> A popular build-it-yourself all-in-one board integrating both microcontroller and stepper motor controllers</li>\n<li><strong>Minitronics:</strong> A reduced size variation of the Sanguinololu.</li>\n<li><strong>RUMBA:</strong> A modular integrated board with modules supporting LCD panels, external memory cards and other add-on capabilities.</li>\n<li><strong>ELEFU-RA:</strong> An expandable development platform that can plug in standard ATX computer power supplies and connect up a wide range of sensors and motors.</li>\n<li><strong>Prusa MINI:</strong> Its electronics uses a 32bit ARM &#8216;buddy board&#8217; integrated motherboard and color LCD screen.</li>\n<li><strong>Megatronics:</strong> The “big brother” of the Minitronics board, which allows the use of higher-temperature thermocouple thermal sensors in place of the more common thermistor type sensors.</li>\n</ul>\n<p>Many components have multiple options such as the selection of contact switches or magnetic hall-type sensors for the end-stops or the use of different fans to meet the type of plastic you are using. Even the type of motor controllers and wire connections (soldered vs. crimped) will affect options available upon completion of your RepRap.</p>\n"},{"title":"Assembling the RepRap extruder and RepRap upgrades on a 3D printer","thumb":null,"image":null,"content":"<p>Once the framework for a 3D printer has been assembled and the electronics selected, the final component needed is the extruder and hot-end that melt and deposit plastic to create your object. The extruder slides the plastic filament incrementally into the heated hot-end, where it pushes a small amount of the molten plastic out with each step. The extruder can be made in many ways, including:</p>\n<ul>\n<li><strong>Geared:</strong> Some extruders include additional gears to slow the advance of filament with each step to gain greater control, and to increase the force with which the filament can be advanced into the hot-end.</li>\n<li><strong>Hobbed:</strong> Smooth plastic filament can be held by the extruder using interlocking gears or a hobbed bolt (one with teeth cut along the axis around the bolt’s girth) to hold the filament against an idler wheel so its advance and retraction can be carefully controlled.</li>\n<li><strong>Bowden:</strong> This type of extruder forces the filament through a tube connecting the extruder and hot-end rather than forcing the filament directly into the hot-end, separating the two and allowing the hot-end to be lighter without the (directly attached) extruder motor for non-Cartesian formats.</li>\n<li><strong>Syringe:</strong> For designs like the Fab@Home printer or RepRaps equipped with my Universal Paste Extruder, a syringe can be used with a constrained strap to incrementally extrude paste or gel materials instead of the usual melted plastic.</li>\n<li><strong>Multi-color:</strong> Advanced extruders include multiple gearboxes and motors to advance multiple filaments into the hot end at the same time. By varying the rate of each color using additional electronics, the end result is a multi-colored print that varies throughout.</li>\n<li><strong>Dual:</strong> A common variation with more limited color mixing involves a dual extruder, which is simply two extruders side by side. This is useful for prints that include PVA (polyvinyl alcohol) or other soluble support material integrated into the same print as the object filament material.</li>\n</ul>\n"},{"title":"Identifying 3D printer software and machine calibration","thumb":null,"image":null,"content":"<p>The software chain for a RepRap 3D printer begins with the products used to create and prepare the virtual 3D model for printing. However, once an object model has been created or obtained, the model must be processed through several steps before the solid object can be created by the RepRap printer:</p>\n<ul>\n<li><strong>Support:</strong> Unlike granular binding systems, fused plastic extruders cannot deposit plastic in mid-air and have it remain there. For overhangs and wide spans, support material must be added to the design and later removed after printing.</li>\n<li><strong>Raft:</strong> Depending on the type of material and build plate used, it may be useful to add a <em>raft</em> — a flat printed layer that forms a base on the build plate for your model. As in the case of support, the raft is later removed when finishing the object.</li>\n<li><strong>Fill:</strong> Because additive systems like the RepRap are unaffected by the complexity of an object&#8217;s internal design when it comes to the layer-printing process, it is possible to define any solid object as a solid outer shell and an interior space that can be completely solid (100% fill), empty (0% fill) or some midway point in which a regular pattern of thin walls provide support with voids interspersed. The amount of volume that includes plastic is defined as its “fill” and allows you to produce the same object printout using far less plastic than solid equivalents.</li>\n<li><strong> Slicing: </strong>The virtual model is calculated as a series of layers, with each slice then translated into code that will direct the printer to move a particular distance while extruding (or not) and then repeating the process until that layer is done and the Z-axis can be moved to the next layer where the process begins again. This code, known as <em>g-code</em>, allows many slicers to add support and raft elements automatically, along with an automatic “fill” pattern to reduce the amount of plastic needed for each print.</li>\n</ul>\n<p>After your model has been prepared and sliced, a few final details are handled by the printer control software.</p>\n<p>Settings for the hot-end and heated build plate control the melted plastic viscosity and layer adhesion, while the movement rate of the extruder controls the thickness of the extruded material and the rate of the printer’s movement. Additional factors can be adjusted for finer control of each feature.</p>\n"}],"videoInfo":{"videoId":null,"name":null,"accountId":null,"playerId":null,"thumbnailUrl":null,"description":null,"uploadDate":null}},"sponsorship":{"sponsorshipPage":false,"backgroundImage":{"src":null,"width":0,"height":0},"brandingLine":"","brandingLink":"","brandingLogo":{"src":null,"width":0,"height":0},"sponsorAd":"","sponsorEbookTitle":"","sponsorEbookLink":"","sponsorEbookImage":{"src":null,"width":0,"height":0}},"primaryLearningPath":"Explore","lifeExpectancy":"Two years","lifeExpectancySetFrom":"2024-09-06T00:00:00+00:00","dummiesForKids":"no","sponsoredContent":"no","adInfo":"","adPairKey":[]},"status":"publish","visibility":"public","articleId":207783},{"headers":{"creationTime":"2020-11-07T15:28:05+00:00","modifiedTime":"2024-08-16T16:15:08+00:00","timestamp":"2024-08-16T18:01:22+00:00"},"data":{"breadcrumbs":[{"name":"Technology","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33512"},"slug":"technology","categoryId":33512},{"name":"Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33592"},"slug":"programming-web-design","categoryId":33592},{"name":"General Programming & Web Design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33610"},"slug":"general-programming-web-design","categoryId":33610}],"title":"What Is DevOps?","strippedTitle":"what is devops?","slug":"what-is-devops","canonicalUrl":"","收指数擎整合调整":{"metaDescription":"What is DevOps? DevOps is an agile-derived approach that helps guide software development to prioritize people over process. Find out more from coursofppt.com.","noIndex":0,"noFollow":0},"content":"What is DevOps? It’s difficult to provide you with an exact DevOps prescription — because none exists. <strong>DevOps</strong> is a philosophy that guides software development, one that that prioritizes people over process and process over tooling. DevOps builds a culture of trust, collaboration, and continuous improvement.\r\n\r\n[caption id=\"attachment_265612\" align=\"aligncenter\" width=\"556\"]<img class=\"wp-image-265612 size-full\" src=\"//coursofppt.com/wp-content/uploads/devops_cycle.jpg\" alt=\"DevOps cycle\" width=\"556\" height=\"312\" /> ©Shutterstock/Phakawan Wongpetanan[/caption]\r\n\r\nAs a culture, the DevOps philosophy views the development process in a holistic way, taking into account everyone involved: developers, testers, operations folks, security, and infrastructure engineers. DevOps doesn’t put any one of these groups above the others, nor does it rank the importance of their work. Instead, a DevOps company treats the entire team of engineers as critical to ensuring that the customer has the best experience possible.\r\n<h2 id=\"tab1\" >DevOps evolved from Agile</h2>\r\nIn 2001, 17 software engineers met and published the “<a href=\"//agilemanifesto.org/\">Manifesto for Agile Software Development</a>,” which spelled out the 12 principles of Agile project management. This new workflow was a response to the frustration and inflexibility of teams working in a waterfall (linear) process.\r\n\r\nWorking within <a href=\"//coursofppt.com/careers/project-management/the-12-agile-principles/\">Agile principles</a>, engineers aren’t required to adhere to original requirements or follow a linear development workflow in which each team hands off work to the next. Instead, they’re capable of adapting to the ever-changing needs of the business or the market, and sometimes even the changing technology and tools.\r\n\r\nAlthough Agile revolutionized software development in many ways, it failed to address the conflict between developers and operations specialists. Silos still developed around technical skill sets and specialties, and developers still handed off code to operations folks to deploy and support.\r\n\r\nIn 2008, Andrew Clay Shafer talked to Patrick Debois about his frustrations with the constant conflict between developers and operations folks. Together, they launched the first DevOpsDays event in Belgium to create a better — and more agile — way of approaching software development. This evolution of Agile took hold, and DevOps has since enabled companies around the globe to produce better software faster (and usually cheaper). DevOps is not a fad. It’s a widely accepted engineering philosophy.\r\n<h2 id=\"tab2\" >DevOps focuses on people</h2>\r\nAnyone who says that DevOps is all about tooling wants to sell you something. Above all else, DevOps is a philosophy that focuses on engineers and how they can better work together to produce great software. You could spend millions on every DevOps tool in the world and still be no closer to DevOps nirvana.\r\n\r\nInstead, focus on your most important engineering asset: engineers. Happy engineers make great software. How do you make happy engineers? Well, you create a collaborative work environment in which mutual respect, shared knowledge, and acknowledgement of hard work can thrive.\r\n<h2 id=\"tab3\" >Company culture is the foundation of DevOps</h2>\r\nYour company has a culture, even if it has been left to develop through inertia. That culture has more influence on your job satisfaction, productivity, and team velocity than you probably realize.\r\n\r\n<a href=\"//coursofppt.com/business/management/pay-attention-to-invisible-forces-in-your-company-culture/\">Company culture</a> is best described as the unspoken expectations, behavior, and values of an organization. Culture is what tells your employees whether company leadership is open to new ideas. It’s what informs an employee’s decision as to whether to come forward with a problem or to sweep it under the rug.\r\n\r\nCulture is something to be designed and refined, not something to leave to chance. Though the actual definition varies from company to company and person to person, DevOps is a cultural approach to engineering at its core.\r\n\r\nA toxic company culture will kill your DevOps journey before it even starts. Even if your engineering team adopts a DevOps mindset, the attitudes and challenges of the larger company will bleed into your environment.\r\n\r\nWith DevOps, you avoid blame, grow trust, and focus on the customer. You give your engineers autonomy and empower them to do what they do best: engineer solutions. As you begin to implement DevOps, you give your engineers the time and space to adjust to it, allowing them the opportunities to get to know each other better and build rapport with engineers with different specialties.\r\n\r\nAlso, you measure progress and reward achievements. Never blame individuals for failures. Instead, the team should continuously improve together, and achievements should be celebrated and rewarded.\r\n<h2 id=\"tab4\" >You learn by observing your process and collecting data</h2>\r\nObserving your workflow without expectation is a powerful technique to use to see the successes and challenges of your workflow realistically. This observation is the only way to find the correct solution to the areas and issues that create bottlenecks in your processes.\r\n\r\nJust as with software, slapping some Kubernetes (or other new tool) on a problem doesn’t necessarily fix it. You have to know where the problems are before you go about fixing them. As you continue, you collect data — not to measure success or failure but to track the team’s performance. You determine what works, what doesn’t work, and what to try next time.\r\n<h2 id=\"tab5\" >Persuasion is key to DevOps adoption</h2>\r\nSelling the idea of DevOps to your leaders, peers, and employees isn’t easy. The process isn’t always intuitive to engineers, either. Shouldn’t a great idea simply sell itself? If only it were that easy. However, a key concept to always keep in mind as you implement DevOps is that it emphasizes people.\r\n\r\nhe so-called “soft skills” of communication and collaboration are central to your DevOps transformation. Persuading other folks on your team and within your company to adopt DevOps requires practicing <a href=\"//coursofppt.com/business/human-resources/employee-engagement/how-good-communication-affects-employee-engagement/\">good communication skills</a>. Early conversations that you have with colleagues about DevOps can set you up for success down the road — especially when you hit an unexpected speed bump.\r\n<h2 id=\"tab6\" >Small, incremental changes are priceless in DevOps</h2>\r\nThe aspect of DevOps that emphasizes making changes in small, incremental ways has its roots in lean manufacturing, which embraces accelerated feedback, continuous improvement, and swifter time to market.\r\n\r\nWater is a good metaphor for DevOps transformations. Water is one of the world’s most powerful elements. Unless people are watching the flood waters rise in front of them, they think of it as relatively harmless. The Colorado River carved the Grand Canyon. Slowly, over millions of years, water cut through stone to expose nearly two billion years of soil and rock.\r\n\r\nYou can be like water. Be the slow, relentless change in your organization. Here’s that famous quote from a <a href=\"//www.youtube.com/watch?v=cJMwBwFj5nQ\">Bruce Lee interview</a> to inspire you:\r\n\r\nBe formless, shapeless, like water. Now you put water into a cup, it becomes the cup. You put water into a bottle, it becomes the bottle. You put it in a teapot, it becomes the teapot. Now, water can flow or it can crash. Be water, my friend.\r\n\r\nMaking incremental changes means, for example, that you find a problem and you fix that problem. Then you fix the next one. You don’t take on too much too fast and you don’t pick every battle to fight. You understand that some fights aren’t worth the energy or social capital that they can cost you.\r\n\r\nUltimately, DevOps isn’t a list of steps you can take, but is rather an approach that should guide the decisions you make as you develop.","description":"What is DevOps? It’s difficult to provide you with an exact DevOps prescription — because none exists. <strong>DevOps</strong> is a philosophy that guides software development, one that that prioritizes people over process and process over tooling. DevOps builds a culture of trust, collaboration, and continuous improvement.\r\n\r\n[caption id=\"attachment_265612\" align=\"aligncenter\" width=\"556\"]<img class=\"wp-image-265612 size-full\" src=\"//coursofppt.com/wp-content/uploads/devops_cycle.jpg\" alt=\"DevOps cycle\" width=\"556\" height=\"312\" /> ©Shutterstock/Phakawan Wongpetanan[/caption]\r\n\r\nAs a culture, the DevOps philosophy views the development process in a holistic way, taking into account everyone involved: developers, testers, operations folks, security, and infrastructure engineers. DevOps doesn’t put any one of these groups above the others, nor does it rank the importance of their work. Instead, a DevOps company treats the entire team of engineers as critical to ensuring that the customer has the best experience possible.\r\n<h2 id=\"tab1\" >DevOps evolved from Agile</h2>\r\nIn 2001, 17 software engineers met and published the “<a href=\"//agilemanifesto.org/\">Manifesto for Agile Software Development</a>,” which spelled out the 12 principles of Agile project management. This new workflow was a response to the frustration and inflexibility of teams working in a waterfall (linear) process.\r\n\r\nWorking within <a href=\"//coursofppt.com/careers/project-management/the-12-agile-principles/\">Agile principles</a>, engineers aren’t required to adhere to original requirements or follow a linear development workflow in which each team hands off work to the next. Instead, they’re capable of adapting to the ever-changing needs of the business or the market, and sometimes even the changing technology and tools.\r\n\r\nAlthough Agile revolutionized software development in many ways, it failed to address the conflict between developers and operations specialists. Silos still developed around technical skill sets and specialties, and developers still handed off code to operations folks to deploy and support.\r\n\r\nIn 2008, Andrew Clay Shafer talked to Patrick Debois about his frustrations with the constant conflict between developers and operations folks. Together, they launched the first DevOpsDays event in Belgium to create a better — and more agile — way of approaching software development. This evolution of Agile took hold, and DevOps has since enabled companies around the globe to produce better software faster (and usually cheaper). DevOps is not a fad. It’s a widely accepted engineering philosophy.\r\n<h2 id=\"tab2\" >DevOps focuses on people</h2>\r\nAnyone who says that DevOps is all about tooling wants to sell you something. Above all else, DevOps is a philosophy that focuses on engineers and how they can better work together to produce great software. You could spend millions on every DevOps tool in the world and still be no closer to DevOps nirvana.\r\n\r\nInstead, focus on your most important engineering asset: engineers. Happy engineers make great software. How do you make happy engineers? Well, you create a collaborative work environment in which mutual respect, shared knowledge, and acknowledgement of hard work can thrive.\r\n<h2 id=\"tab3\" >Company culture is the foundation of DevOps</h2>\r\nYour company has a culture, even if it has been left to develop through inertia. That culture has more influence on your job satisfaction, productivity, and team velocity than you probably realize.\r\n\r\n<a href=\"//coursofppt.com/business/management/pay-attention-to-invisible-forces-in-your-company-culture/\">Company culture</a> is best described as the unspoken expectations, behavior, and values of an organization. Culture is what tells your employees whether company leadership is open to new ideas. It’s what informs an employee’s decision as to whether to come forward with a problem or to sweep it under the rug.\r\n\r\nCulture is something to be designed and refined, not something to leave to chance. Though the actual definition varies from company to company and person to person, DevOps is a cultural approach to engineering at its core.\r\n\r\nA toxic company culture will kill your DevOps journey before it even starts. Even if your engineering team adopts a DevOps mindset, the attitudes and challenges of the larger company will bleed into your environment.\r\n\r\nWith DevOps, you avoid blame, grow trust, and focus on the customer. You give your engineers autonomy and empower them to do what they do best: engineer solutions. As you begin to implement DevOps, you give your engineers the time and space to adjust to it, allowing them the opportunities to get to know each other better and build rapport with engineers with different specialties.\r\n\r\nAlso, you measure progress and reward achievements. Never blame individuals for failures. Instead, the team should continuously improve together, and achievements should be celebrated and rewarded.\r\n<h2 id=\"tab4\" >You learn by observing your process and collecting data</h2>\r\nObserving your workflow without expectation is a powerful technique to use to see the successes and challenges of your workflow realistically. This observation is the only way to find the correct solution to the areas and issues that create bottlenecks in your processes.\r\n\r\nJust as with software, slapping some Kubernetes (or other new tool) on a problem doesn’t necessarily fix it. You have to know where the problems are before you go about fixing them. As you continue, you collect data — not to measure success or failure but to track the team’s performance. You determine what works, what doesn’t work, and what to try next time.\r\n<h2 id=\"tab5\" >Persuasion is key to DevOps adoption</h2>\r\nSelling the idea of DevOps to your leaders, peers, and employees isn’t easy. The process isn’t always intuitive to engineers, either. Shouldn’t a great idea simply sell itself? If only it were that easy. However, a key concept to always keep in mind as you implement DevOps is that it emphasizes people.\r\n\r\nhe so-called “soft skills” of communication and collaboration are central to your DevOps transformation. Persuading other folks on your team and within your company to adopt DevOps requires practicing <a href=\"//coursofppt.com/business/human-resources/employee-engagement/how-good-communication-affects-employee-engagement/\">good communication skills</a>. Early conversations that you have with colleagues about DevOps can set you up for success down the road — especially when you hit an unexpected speed bump.\r\n<h2 id=\"tab6\" >Small, incremental changes are priceless in DevOps</h2>\r\nThe aspect of DevOps that emphasizes making changes in small, incremental ways has its roots in lean manufacturing, which embraces accelerated feedback, continuous improvement, and swifter time to market.\r\n\r\nWater is a good metaphor for DevOps transformations. Water is one of the world’s most powerful elements. Unless people are watching the flood waters rise in front of them, they think of it as relatively harmless. The Colorado River carved the Grand Canyon. Slowly, over millions of years, water cut through stone to expose nearly two billion years of soil and rock.\r\n\r\nYou can be like water. Be the slow, relentless change in your organization. Here’s that famous quote from a <a href=\"//www.youtube.com/watch?v=cJMwBwFj5nQ\">Bruce Lee interview</a> to inspire you:\r\n\r\nBe formless, shapeless, like water. Now you put water into a cup, it becomes the cup. You put water into a bottle, it becomes the bottle. You put it in a teapot, it becomes the teapot. Now, water can flow or it can crash. Be water, my friend.\r\n\r\nMaking incremental changes means, for example, that you find a problem and you fix that problem. Then you fix the next one. You don’t take on too much too fast and you don’t pick every battle to fight. You understand that some fights aren’t worth the energy or social capital that they can cost you.\r\n\r\nUltimately, DevOps isn’t a list of steps you can take, but is rather an approach that should guide the decisions you make as you develop.","blurb":"","authors":[{"authorId":30388,"name":"Emily Freeman","slug":"emily-freeman","description":" <p><b>Emily Freeman</b> is a technologist and storyteller who helps engineering teams improve their velocity. She believes the biggest challenges facing engineers aren&#39;t technical, but human. She&#39;s worked with both cutting&#45;edge startups and some of the largest technology providers in the world. Emily is currently a Senior Cloud Advocate at Microsoft and a frequent keynote speaker at technology events. ","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/30388"}}],"primaryCategoryTaxonomy":{"categoryId":33610,"title":"General Programming & Web Design","slug":"general-programming-web-design","_links":{"self":"//dummies-api.coursofppt.com/v2/categories/33610"}},"secondaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"tertiaryCategoryTaxonomy":{"categoryId":0,"title":null,"slug":null,"_links":null},"trendingArticles":null,"inThisArticle":[{"label":"DevOps evolved from Agile","target":"#tab1"},{"label":"DevOps focuses on people","target":"#tab2"},{"label":"Company culture is the foundation of DevOps","target":"#tab3"},{"label":"You learn by observing your process and collecting data","target":"#tab4"},{"label":"Persuasion is key to DevOps adoption","target":"#tab5"},{"label":"Small, incremental changes are priceless in DevOps","target":"#tab6"}],"relatedArticles":{"fromBook":[{"articleId":265680,"title":"Using DevOps To Improve Engineering","slug":"tips-for-improving-engineering-performance-with-devops","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265680"}},{"articleId":265675,"title":"How To Automate DevOps in the Cloud","slug":"make-more-of-your-cloud-tools-automating-devops-in-the-cloud","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265675"}},{"articleId":265672,"title":"How To Choose a Cloud Service Provider for DevOps","slug":"choosing-the-best-cloud-service-provider-features-and-tools-for-devops","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265672"}},{"articleId":265664,"title":"How to Form DevOps Teams in Your Organization","slug":"how-to-form-devops-teams-in-your-organization","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265664"}},{"articleId":265656,"title":"Moving to DevOps Processes: From a Line to a Circuit","slug":"moving-to-devops-processes-from-a-line-to-a-circuit","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265656"}}],"fromCategory":[{"articleId":299575,"title":"HTML, CSS, & JavaScript All-in-One For Dummies Cheat Sheet","slug":"html-css-javascript-all-in-one-for-dummies-cheat-sheet","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/299575"}},{"articleId":265680,"title":"Using DevOps To Improve Engineering","slug":"tips-for-improving-engineering-performance-with-devops","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265680"}},{"articleId":265675,"title":"How To Automate DevOps in the Cloud","slug":"make-more-of-your-cloud-tools-automating-devops-in-the-cloud","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265675"}},{"articleId":265672,"title":"How To Choose a Cloud Service Provider for DevOps","slug":"choosing-the-best-cloud-service-provider-features-and-tools-for-devops","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265672"}},{"articleId":265664,"title":"How to Form DevOps Teams in Your Organization","slug":"how-to-form-devops-teams-in-your-organization","categoryList":["technology","programming-web-design","general-programming-web-design"],"_links":{"self":"//dummies-api.coursofppt.com/v2/articles/265664"}}]},"hasRelatedBookFromSearch":false,"relatedBook":{"bookId":281681,"slug":"devops-for-dummies","isbn":"9781119552222","categoryList":["technology","programming-web-design","general-programming-web-design"],"amazon":{"default":"//www.amazon.com/gp/product/1119552222/ref=as_li_tl?ie=UTF8&tag=wiley01-20","ca":"//www.amazon.ca/gp/product/1119552222/ref=as_li_tl?ie=UTF8&tag=wiley01-20","indigo_ca":"//www.tkqlhce.com/click-9208661-13710633?url=//www.chapters.indigo.ca/en-ca/books/product/1119552222-item.html&cjsku=978111945484","gb":"//www.amazon.co.uk/gp/product/1119552222/ref=as_li_tl?ie=UTF8&tag=wiley01-20","de":"//www.amazon.de/gp/product/1119552222/ref=as_li_tl?ie=UTF8&tag=wiley01-20"},"image":{"src":"//coursofppt.com/wp-content/uploads/devops-for-dummies-cover-9781119552222-203x255.jpg","width":203,"height":255},"title":"DevOps For Dummies","testBankPinActivationLink":"","bookOutOfPrint":false,"authorsInfo":"<p><b data-author-id=\"30388\">Emily Freeman</b> is a technologist and storyteller who helps engineering teams improve their velocity. She believes the biggest challenges facing engineers aren't technical, but human. She's worked with both cutting-edge startups and some of the largest technology providers in the world. Emily is currently a Senior Cloud Advocate at Microsoft and a frequent keynote speaker at technology events. </p>","authors":[{"authorId":30388,"name":"Emily Freeman","slug":"emily-freeman","description":" <p><b>Emily Freeman</b> is a technologist and storyteller who helps engineering teams improve their velocity. She believes the biggest challenges facing engineers aren&#39;t technical, but human. She&#39;s worked with both cutting&#45;edge startups and some of the largest technology providers in the world. Emily is currently a Senior Cloud Advocate at Microsoft and a frequent keynote speaker at technology events. ","hasArticle":false,"_links":{"self":"//dummies-api.coursofppt.com/v2/authors/30388"}}],"_links":{"self":"//dummies-api.coursofppt.com/v2/books/"}},"collections":[],"articleAds":{"footerAd":"<div class=\"du-ad-region row\" id=\"article_page_adhesion_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_adhesion_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;general-programming-web-design&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781119552222&quot;]}]\" id=\"du-slot-64dd0ef2deea9\"></div></div>","rightAd":"<div class=\"du-ad-region row\" id=\"article_page_right_ad\"><div class=\"du-ad-unit col-md-12\" data-slot-id=\"article_page_right_ad\" data-refreshed=\"false\" \r\n data-target = \"[{&quot;key&quot;:&quot;cat&quot;,&quot;values&quot;:[&quot;technology&quot;,&quot;programming-web-design&quot;,&quot;general-programming-web-design&quot;]},{&quot;key&quot;:&quot;isbn&quot;,&quot;values&quot;:[&quot;9781119552222&quot;]}]\" id=\"du-slot-64dd0ef2df611\"></div></div>"},"articleType":{"articleType":"Articles","articleList":null,"content":null,"videoInfo":{"videoId":null,"name":null,"accountId":null,"playerId":null,"thumbnailUrl":null,"description":null,"uploadDate":null}},"sponsorship":{"sponsorshipPage":false,"backgroundImage":{"src":null,"width":0,"height":0},"brandingLine":"","brandingLink":"","brandingLogo":{"src":null,"width":0,"height":0},"sponsorAd":"","sponsorEbookTitle":"","sponsorEbookLink":"","sponsorEbookImage":{"src":null,"width":0,"height":0}},"primaryLearningPath":"Advance","lifeExpectancy":"Two years","lifeExpectancySetFrom":"2024-08-16T00:00:00+00:00","dummiesForKids":"no","sponsoredContent":"no","adInfo":"","adPairKey":[]},"status":"publish","visibility":"public","articleId":265584}],"_links":{"self":{"self":"//dummies-api.coursofppt.com/v2/categories/33592/categoryArticles?sortField=time&sortOrder=1&size=10&offset=0"},"next":{"self":"//dummies-api.coursofppt.com/v2/categories/33592/categoryArticles?sortField=time&sortOrder=1&size=10&offset=10"},"last":{"self":"//dummies-api.coursofppt.com/v2/categories/33592/categoryArticles?sortField=time&sortOrder=1&size=10&offset=1384"}}},"objectTitle":"","status":"success","pageType":"article-category","objectId":"33592","page":1,"sortField":"time","sortOrder":1,"categoriesIds":[],"articleTypes":[],"filterData":{"categoriesFilter":[{"itemId":0,"itemName":"All Categories","count":1394},{"itemId":33593,"itemName":"3D Printing","count":33},{"itemId":33594,"itemName":"App Development","count":85},{"itemId":34376,"itemName":"Blogging & Website Platforms","count":66},{"itemId":33595,"itemName":"C","count":17},{"itemId":33596,"itemName":"C#","count":29},{"itemId":33597,"itemName":"C++","count":63},{"itemId":33598,"itemName":"Cisco Programming","count":1},{"itemId":33599,"itemName":"Coding","count":106},{"itemId":34324,"itemName":"CSS3","count":4},{"itemId":33610,"itemName":"General Programming & Web Design","count":208},{"itemId":34511,"itemName":"Go Programming Language","count":1},{"itemId":33600,"itemName":"HTML","count":8},{"itemId":33601,"itemName":"HTML5","count":265},{"itemId":33602,"itemName":"Java","count":122},{"itemId":33603,"itemName":"JavaScript","count":87},{"itemId":33604,"itemName":"MATLAB","count":83},{"itemId":33592,"itemName":"Programming & Web Design","count":2},{"itemId":33606,"itemName":"Python","count":83},{"itemId":33607,"itemName":"R","count":99},{"itemId":33608,"itemName":"SQL","count":26},{"itemId":34338,"itemName":"Web Hosting","count":6}],"articleTypeFilter":[{"articleType":"All Types","count":1394},{"articleType":"Articles","count":1284},{"articleType":"Cheat Sheet","count":54},{"articleType":"Step by Step","count":56}]},"filterDataLoadedStatus":"success","pageSize":10},"adsState":{"pageScripts":{"headers":{"timestamp":"2025-01-31T00:50:01+00:00"},"adsId":0,"data":{"scripts":[{"pages":["all"],"location":"header","script":"<!--Optimizely Script-->\r\n<script src=\"//cdn.optimizely.com/js/10563184655.js\"></script>","enabled":false},{"pages":["all"],"location":"header","script":"<!-- comScore Tag -->\r\n<script>var _comscore = _comscore || [];_comscore.push({ c1: \"2\", c2: \"15097263\" });(function() {var s = document.createElement(\"script\"), el = document.getElementsByTagName(\"script\")[0]; s.async = true;s.src = (document.location.protocol == \"https:\" ? \"//sb\" : \"//b\") + \".scorecardresearch.com/beacon.js\";el.parentNode.insertBefore(s, el);})();</script><noscript><img src=\"//sb.scorecardresearch.com/p?c1=2&c2=15097263&cv=2.0&cj=1\" /></noscript>\r\n<!-- / comScore Tag -->","enabled":true},{"pages":["all"],"location":"footer","script":"<!--BEGIN QUALTRICS WEBSITE FEEDBACK SNIPPET-->\r\n<script type='text/javascript'>\r\n(function(){var g=function(e,h,f,g){\r\nthis.get=function(a){for(var a=a+\"=\",c=document.cookie.split(\";\"),b=0,e=c.length;b<e;b++){for(var d=c[b];\" \"==d.charAt(0);)d=d.substring(1,d.length);if(0==d.indexOf(a))return d.substring(a.length,d.length)}return null};\r\nthis.set=function(a,c){var b=\"\",b=new Date;b.setTime(b.getTime()+6048E5);b=\"; expires=\"+b.toGMTString();document.cookie=a+\"=\"+c+b+\"; path=/; \"};\r\nthis.check=function(){var a=this.get(f);if(a)a=a.split(\":\");else if(100!=e)\"v\"==h&&(e=Math.random()>=e/100?0:100),a=[h,e,0],this.set(f,a.join(\":\"));else return!0;var c=a[1];if(100==c)return!0;switch(a[0]){case \"v\":return!1;case \"r\":return c=a[2]%Math.floor(100/c),a[2]++,this.set(f,a.join(\":\")),!c}return!0};\r\nthis.go=function(){if(this.check()){var a=document.createElement(\"script\");a.type=\"text/javascript\";a.src=g;document.body&&document.body.appendChild(a)}};\r\nthis.start=function(){var t=this;\"complete\"!==document.readyState?window.addEventListener?window.addEventListener(\"load\",function(){t.go()},!1):window.attachEvent&&window.attachEvent(\"onload\",function(){t.go()}):t.go()};};\r\ntry{(new g(100,\"r\",\"QSI_S_ZN_5o5yqpvMVjgDOuN\",\"//zn5o5yqpvmvjgdoun-wiley.siteintercept.qualtrics.com/SIE/?Q_ZID=ZN_5o5yqpvMVjgDOuN\")).start()}catch(i){}})();\r\n</script><div id='ZN_5o5yqpvMVjgDOuN'><!--DO NOT REMOVE-CONTENTS PLACED HERE--></div>\r\n<!--END WEBSITE FEEDBACK SNIPPET-->","enabled":false},{"pages":["all"],"location":"header","script":"<!-- Hotjar Tracking Code for //coursofppt.com -->\r\n<script>\r\n (function(h,o,t,j,a,r){\r\n h.hj=h.hj||function(){(h.hj.q=h.hj.q||[]).push(arguments)};\r\n h._hjSettings={hjid:257151,hjsv:6};\r\n a=o.getElementsByTagName('head')[0];\r\n r=o.createElement('script');r.async=1;\r\n r.src=t+h._hjSettings.hjid+j+h._hjSettings.hjsv;\r\n a.appendChild(r);\r\n })(window,document,'//static.hotjar.com/c/hotjar-','.js?sv=');\r\n</script>","enabled":false},{"pages":["article"],"location":"header","script":"<!-- //Connect Container: dummies --> <script src=\"//get.s-onetag.com/bffe21a1-6bb8-4928-9449-7beadb468dae/tag.min.js\" async defer></script>","enabled":true},{"pages":["homepage"],"location":"header","script":"<meta name=\"facebook-domain-verification\" content=\"irk8y0irxf718trg3uwwuexg6xpva0\" />","enabled":true},{"pages":["homepage","article","category","search"],"location":"footer","script":"<!-- Facebook Pixel Code -->\r\n<noscript>\r\n<img height=\"1\" width=\"1\" src=\"//www.facebook.com/tr?id=256338321977984&ev=PageView&noscript=1\"/>\r\n</noscript>\r\n<!-- End Facebook Pixel Code -->","enabled":true}]}},"pageScriptsLoadedStatus":"success"},"navigationState":{"navigationCollections":[{"collectionId":287568,"title":"BYOB (Be Your Own Boss)","hasSubCategories":false,"url":"/collection/for-the-entry-level-entrepreneur-287568"},{"collectionId":293237,"title":"Be a Rad Dad","hasSubCategories":false,"url":"/collection/be-the-best-dad-293237"},{"collectionId":295890,"title":"Career Shifting","hasSubCategories":false,"url":"/collection/career-shifting-295890"},{"collectionId":294090,"title":"Contemplating the Cosmos","hasSubCategories":false,"url":"/collection/theres-something-about-space-294090"},{"collectionId":287563,"title":"For Those Seeking Peace of Mind","hasSubCategories":false,"url":"/collection/for-those-seeking-peace-of-mind-287563"},{"collectionId":287570,"title":"For the Aspiring Aficionado","hasSubCategories":false,"url":"/collection/for-the-bougielicious-287570"},{"collectionId":291903,"title":"For the Budding Cannabis Enthusiast","hasSubCategories":false,"url":"/collection/for-the-budding-cannabis-enthusiast-291903"},{"collectionId":299891,"title":"For the College Bound","hasSubCategories":false,"url":"/collection/for-the-college-bound-299891"},{"collectionId":291934,"title":"For the Exam-Season Crammer","hasSubCategories":false,"url":"/collection/for-the-exam-season-crammer-291934"},{"collectionId":287569,"title":"For the Hopeless Romantic","hasSubCategories":false,"url":"/collection/for-the-hopeless-romantic-287569"}],"navigationCollectionsLoadedStatus":"success","navigationCategories":{"books":{"0":{"data":[{"categoryId":33512,"title":"Technology","hasSubCategories":true,"url":"/category/books/technology-33512"},{"categoryId":33662,"title":"Academics & The Arts","hasSubCategories":true,"url":"/category/books/academics-the-arts-33662"},{"categoryId":33809,"title":"Home, Auto, & Hobbies","hasSubCategories":true,"url":"/category/books/home-auto-hobbies-33809"},{"categoryId":34038,"title":"Body, Mind, & Spirit","hasSubCategories":true,"url":"/category/books/body-mind-spirit-34038"},{"categoryId":34224,"title":"Business, Careers, & Money","hasSubCategories":true,"url":"/category/books/business-careers-money-34224"}],"breadcrumbs":[],"categoryTitle":"Level 0 Category","mainCategoryUrl":"/category/books/level-0-category-0"}},"articles":{"0":{"data":[{"categoryId":33512,"title":"Technology","hasSubCategories":true,"url":"/category/articles/technology-33512"},{"categoryId":33662,"title":"Academics & The Arts","hasSubCategories":true,"url":"/category/articles/academics-the-arts-33662"},{"categoryId":33809,"title":"Home, Auto, & Hobbies","hasSubCategories":true,"url":"/category/articles/home-auto-hobbies-33809"},{"categoryId":34038,"title":"Body, Mind, & Spirit","hasSubCategories":true,"url":"/category/articles/body-mind-spirit-34038"},{"categoryId":34224,"title":"Business, Careers, & Money","hasSubCategories":true,"url":"/category/articles/business-careers-money-34224"}],"breadcrumbs":[],"categoryTitle":"Level 0 Category","mainCategoryUrl":"/category/articles/level-0-category-0"}}},"navigationCategoriesLoadedStatus":"success"},"searchState":{"searchList":[],"searchStatus":"initial","relatedArticlesList":[],"relatedArticlesStatus":"initial"},"routeState":{"name":"ArticleCategory","path":"/category/articles/programming-web-design-33592/","hash":"","query":{},"params":{"category":"programming-web-design-33592"},"fullPath":"/category/articles/programming-web-design-33592/","meta":{"routeType":"category","breadcrumbInfo":{"suffix":"Articles","baseRoute":"/category/articles"},"prerenderWithAsyncData":true},"from":{"name":null,"path":"/","hash":"","query":{},"params":{},"fullPath":"/","meta":{}}},"profileState":{"auth":{},"userOptions":{},"status":"success"}}
fun88 casino net cách chơi keno trực tuyến game đánh bài baccarat baccarat quốc tế sòng bài trực tuyến